Bouton Macro qui se déplacent suite à execution de la macro

cedric cadre

XLDnaute Nouveau
Bonjour à tous,

voila, j'ai un petit problème avec des bouton macro, je cherche en vain sur le net mais ne trouve pas solution à mon problème...


J'ai 3 feuille Excel avec 2 boutons exécutant des macro sur chaque feuille.

Lorsque je clique sur un bouton, la macro s’exécute correctement mais le bouton s'est déplacé et à rappeticie, c'est pareil pour tous les boutons.

j'ai pourtant coché la case "ne pas déplacer ou avec les cellules" mais rien n'y fait, ils se déplacent tous seul les fourbes.

Du coup je me demande s'il n'est pas possible d'ajouter un code VBA dans mes macro pour repositionner le bouton à la fin de l’exécution des macros.

J'ai beaux chercher sur le net, je n'ai rien trouvé de concret à ce sujet, décidément Google n'est pas mon amis aujourd'hui...

merci pour votre aide précieuse

un mec qui se tape la tête sur son bureau.:mad:
 
Dernière édition:

Brigitte

XLDnaute Barbatruc
Re : Bouton Macro qui se déplacent suite à execution de la macro

Bonjour le fil, coucou Pierre,

A tout hasard, tu ne serais pas en affichage réduit ? La réduction ou l'agrandissement peuvent induire ce que tu décris, il me semble.

Bonne journée. Bisous Pierre (Le mien va être équipé lundi...tu vois de quoi ;-) )
 

cedric cadre

XLDnaute Nouveau
Re : Bouton Macro qui se déplacent suite à execution de la macro

Bonjour et merci pour vos réponses.

Brigitte, malheureusement je ne suis pas en affichage réduit.
Pierre jean, j'aimeria bien te donner un fichier, mais celui-ci est professionel et pluto confidentiel... de plus il fait 60Mo.. même en enlevant les données confidentiel (ce qui me prendrai des jours... ou alors il faudrait que je supprime tout) je n'ai pas le droit de le transmettre.


Du coup, avez vous une solution de macro pour figer un bouton? je me débrouillerai avec le code VBA...

pour exemple, voici une des Macro :
Sub imglobalepro()



If Sheets("Impression PRO").Range("B3").Value <> "" Then Sheets("Calcul PRO").Select
If Sheets("Impression PRO").Range("B4").Value <> "" Then Sheets("ALE").Select Replace:=False
If Sheets("Impression PRO").Range("B5").Value <> "" Then Sheets("AGS").Select Replace:=False
If Sheets("Impression PRO").Range("B6").Value <> "" Then Sheets("KIN").Select Replace:=False
If Sheets("Impression PRO").Range("B7").Value <> "" Then Sheets("HYE").Select Replace:=False
If Sheets("Impression PRO").Range("B8").Value <> "" Then Sheets("HYE").Select Replace:=False
If Sheets("Impression PRO").Range("B9").Value <> "" Then Sheets("HYE").Select Replace:=False
If Sheets("Impression PRO").Range("B10").Value <> "" Then Sheets("SIL").Select Replace:=False
If Sheets("Impression PRO").Range("B11").Value <> "" Then Sheets("BOI").Select Replace:=False
If Sheets("Impression PRO").Range("B12").Value <> "" Then Sheets("DEVIS PRO").Select Replace:=False
If Sheets("Impression PRO").Range("B13").Value <> "" Then Sheets("PRE").Select Replace:=False
If Sheets("Impression PRO").Range("B14").Value <> "" Then Sheets("Calcul PV PRO").Select Replace:=False
If Sheets("Impression PRO").Range("B15").Value <> "" Then Sheets("1PRO").Select Replace:=False
If Sheets("Impression PRO").Range("B16").Value <> "" Then Sheets("N").Select Replace:=False
If Sheets("Impression PRO").Range("B17").Value <> "" Then Sheets("LEX").Select Replace:=False
If Sheets("Impression PRO").Range("B18").Value <> "" Then Sheets("ULT").Select Replace:=False
If Sheets("Impression PRO").Range("B19").Value <> "" Then Sheets("BOS").Select Replace:=False
If Sheets("Impression PRO").Range("B20").Value <> "" Then Sheets("CON").Select Replace:=False
If Sheets("Impression PRO").Range("B21").Value <> "" Then Sheets("CF").Select Replace:=False
If Sheets("Impression PRO").Range("B22").Value <> "" Then Sheets("HYE500").Select Replace:=False

Dim NomClient As String
NomClient = ThisWorkbook.Sheets("Calcul PRO").Range("C6").Value


Dim Ref As String
Ref = ThisWorkbook.Sheets("DEVIS PRO").Range("G10").Value


Sheets("1PRO").Activate
ChDir ThisWorkbook.Path
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"Offre " & Ref & " " & NomClient & " " & Format(Date, "dd mmmm yyyy") & ".pdf", Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
OpenAfterPublish:=True

Sheets("DEVIS PRO").Select

Worksheets("Listes").Range("CO3").Value = Worksheets("Listes").Range("CO3").Value + 1


celle-ci produit un fichier PDF a partir de plusieurs pages onglets... une fois le bouton apuyé, et le PDF crée, le bouton devient plus petit et se déplace un peu... chque clik le rend plus petit jusqu'ace que le bouton soit trop petit et ilisible pour cliquer dessus...
 

pierrejean

XLDnaute Barbatruc
Re : Bouton Macro qui se déplacent suite à execution de la macro

Re

A partir de ta macro j'ai recrée un fichier et le Bouton reste tel quel après les lancements successifs
Néanmoins j'ai refait 2 macros susceptibles restituer les dimensions et l'emplacement du bouton
Vois si tu peux en tirer quelque chose
Il n'en reste pas moins que la bonne solution serait de remédier au problème à la source
 

Pièces jointes

  • Classeur1.xlsm
    26.7 KB · Affichages: 107
  • Classeur1.xlsm
    26.7 KB · Affichages: 118
  • Classeur1.xlsm
    26.7 KB · Affichages: 119
Dernière édition:

cedric cadre

XLDnaute Nouveau
Re : Bouton Macro qui se déplacent suite à execution de la macro

pierre Jean, c'est super !!! ça marche pour le bouton concerné, par contre le deuxième bouton (il y en a deux par page) se déplaçait toujours, j'ai donc fais ceci (bouton 5 et bouton 4):

gauche = Sheets("Devis Part").Shapes("button 5").Left
haut = Sheets("Devis Part").Shapes("button 5").Top
hauteur = Sheets("Devis Part").Shapes("button 5").Height
largeur = Sheets("Devis Part").Shapes("button 5").Width

gauche1 = Sheets("Devis Part").Shapes("button 4").Left
haut1 = Sheets("Devis Part").Shapes("button 4").Top
hauteur1 = Sheets("Devis Part").Shapes("button 4").Height
largeur1 = Sheets("Devis Part").Shapes("button 4").Width

..........................


Sheets("Devis Part").Shapes("button 5").Left = gauche
Sheets("Devis Part").Shapes("button 5").Top = haut
Sheets("Devis Part").Shapes("button 5").Height = hauteur
Sheets("Devis Part").Shapes("button 5").Width = largeur

Sheets("Devis Part").Shapes("button 4").Left = gauche1
Sheets("Devis Part").Shapes("button 4").Top = haut1
Sheets("Devis Part").Shapes("button 4").Height = hauteur1
Sheets("Devis Part").Shapes("button 4").Width = largeur1

et ça à l'air de fonctionner !

Merci beaucoup ! je n'y croyais plus j'étais encore entrain de trifouiller sur des forum pour trouver un truc...

vraiment Génial !
 

Discussions similaires

Statistiques des forums

Discussions
312 215
Messages
2 086 329
Membres
103 180
dernier inscrit
Vcr