Aller au contenu


Comment Empêcher Le Déplacement D'un Bouton Macro

excel macro microsoft vba bouton copier/coller

  • Veuillez vous connecter pour répondre
5 réponses à ce sujet

#1 wildpegase

wildpegase

    Membre

  • Membres
  • Pip
  • 170 messages

Posté 14 décembre 2011 - 05:49

Bonjour à tous,

J'ai une feuille avec un bouton (positionné sur la feuille) qui permet d'exécuter une macro.

Lorsque je fais un copier/coller de la totalité d'une feuille sur celle-cie, cela provoque le déplacement vers la droite de mon bouton.

Je souhaite figer l'emplacement de ce bouton.


P.S : J'ai pourtant précisé dans le format du bouton "ne pas déplacer ou dimensionner avec les cellules".
Malgré cela, le bouton se déplace quand même, le fourbe !
J'ai essayé de régler ce désagrément en utilisant le bouton via la barre d'outils formulaire, ainsi qu'en utilisant un "bouton de commande", sans succés.


Dans l'attente de vos réponses.


Webmicalement

Laurent.

#2 Webmaster

Webmaster

    Webmaster du site

  • Administrateurs
  • Pip
  • 7849 messages

Posté 14 décembre 2011 - 09:21

Et quand tu fais coller, as-tu penser essayer de voir avec les collages spéciaux à savoir si y'aurais une option qui fonctionnerais?

J'avoue que c'est le genre de bug assez frustrant avec Excel... Par ailleurs, tu utilise quelle version précisément?

#3 wildpegase

wildpegase

    Membre

  • Membres
  • Pip
  • 170 messages

Posté 14 décembre 2011 - 11:39

Merci pour ta réponse Webmaster.

Les données source sont de la donnée brute (totalité d'une feuille issue de SAP), sans trie ni formule.
Collage spécial ne m'apporte malheureusement pas de réponse.

J'ai opté pour la solution suivante :

Utiliser des CommandButton. Je les déclare à l'ouverture de la feuille avec Private Sub Worksheet_Activate()

Private Sub Worksheet_Activate()
CommandButton1.Left = 700		  ' positionne le bouton 1 à 700 du bord gauche de la feuille excel
CommandButton1.Top = 50			' positionne le bouton 1 à 50   du haut de la feuille excel
CommandButton1.Width = 240	   ' fixe la largeur du bouton 1 à 240  ==> comme ça plus de changement de largeur de mon bouton
CommandButton1.Height = 78		' fixe la hauteur du bonton 1 à 78   ==> comme ça plus de changement de hauteur de mon bouton

CommandButton2.Left = 700		 ' déclarations à peu près identique pour mon bouton 2
CommandButton2.Top = 150
CommandButton2.Width = 240
CommandButton2.Height = 78

End Sub

De plus étant un peu parano, j'ai ajouté ce code à la fin de chaque macro de chaque bouton.

Comme ça mon problème est "réglé" et mes boutons revienne à leur place initiale.

ouf !

Webmicalement

#4 Webmaster

Webmaster

    Webmaster du site

  • Administrateurs
  • Pip
  • 7849 messages

Posté 14 décembre 2011 - 13:47

Question d'optimisation, t'aurais pu créer une fonction réutilisable dans un module qui t'aurais permis t'éviter de recopier toutes ces lignes à chaque fois ;)

#5 wildpegase

wildpegase

    Membre

  • Membres
  • Pip
  • 170 messages

Posté 15 décembre 2011 - 05:55

Webmaster,

Ta proposition me plait bien,

Mais comment faire en sorte que la macro s'exécute à l'ouverture d'une feuille spécifique ?

En appellant la macro via la feuille ?
Du genre


Private Sub Worksheet_Activate()
application.run "TaMacro"
End Sub

avec dans un module le contenu de mon post #3 ?


Laurent.

Modifié par wildpegase, 15 décembre 2011 - 05:58 .


#6 herve62

herve62

    Membre

  • Membres
  • Pip
  • 8 messages

Posté 02 janvier 2012 - 10:04

Bonjour
Longtemps que je n"ai plus visité ce site ....
Bizarre ton Pb de bouton qui se déplace en faisant du copier/coller dans une feuille , j'ai testé plusieurs fois car j'avais à récuperer
des données d'un autre fichier pour mettre dans une feuille ou j'avais un bouton ; donc je cliquais dans la case haut/gauche ( rangée/colionne) afin de selectionnner Toute la feuille de l'autre fichier , puis Copier , ensuite dans le fichier avec le bouton de commande , je me positionne dans cette MEME case et je fais Coller , toute la feuille est remplacée avec les nouvelles données et le Bouton est TOUJOURS a la MEME PLACE !!





Aussi étiqueté avec excel, macro, microsoft, vba, bouton, copier/coller