Excel 2013 - Souci avec les barres de menus persos

Le
ThierryP
Bonjour tout le monde,

Je continue à découvrir les joies de Excel 2013, ayant résis=
té jusqu'au bout avec mon Office XP !

Dernière en date :
Avec ce bout de code adapté (Merci Denis !!!), je créais une barr=
e d'outils personnalisée :
'
Set BarreMenu = Application.CommandBars.Add(NomBar)
Set BoutonMenu = BarreMenu.Controls.Add(msoControlButton)
With BoutonMenu
.Style = msoButtonIconAndCaption
ThisWorkbook.Worksheets("Paramètres").Shapes("Ellipse 32"=
).Copy
.PasteFace
.Enabled = Actif
'.FaceId = 548
J'obtenais une jolie barre avec des ronds de couleur (Ellipse xx) et un Fac=
eId correspondant. J'ai déjà du abandonner le FaceID et maintenan=
t, de manière aléatoire (pour autant que je puisse en juger), =
j'ai un message d'erreur sur la ligne ThisWorkBook.Worksheets etc (La m=
éthode PasteFace a échouée) et donc ma barre ne se crée=
pas, ou bien pas complètement (il manque quelques boutons).
Ayant remarqué que mes jolis ronds ne se nommaient plus "Ellipse xx" s=
ur ma feuille, mais "Oval xx", je me suis finement dit que j'allais changer=
le mot "Ellipse" par "Oval" et hop ! le tour serait joué Ben non..=
.. Même comportement capricieux.

Si un guru passe dans le coin, je suis preneur de toute idée, piste ou=
solution !!
Merci d'avance

ThierryP
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
MichD
Le #26399443
Le 24/05/16 à 09:27, ThierryP a écrit :
ThisWorkbook.Worksheets("Paramètres").Shapes("Ellipse 32").Copy



Bonjour,

Si tu crées des petits dessins qui sont ceux de Microsoft à partir du
menu "Insérer" du ruban / Formes / ,

Comme tu as un exemplaire office de langue française, Excel te parle en
français dans l'interface de la feuille de calcul, mais VBA est
unilingue anglais peu importe la langue de l'usager. Si tu rebaptises
ces objets d'un nom original, tu ne devrais plus avoir ce problème!

Sélectionne l'objet inséré, et, en utilisant de la section à gauche de
la barre des formules, donne-lui un nom autre que celui qu'il a par
défaut. Tu pourras utiliser ce nom dans la ligne de code "Shapes("Le nom
donné").

Pour ce qui est du reste, si tu ne publies pas ton code, il est
difficile de deviner ce qui ne va pas!


MichD
ThierryP
Le #26399444
Bonsoir Denis,

Toujours aussi rapide à ce que je vois !!
Mais pourquoi n'y ai-je pas pensé tout seul ???
Un tout grand merci pour ta réponse !

ThierryP



Le mardi 24 mai 2016 17:07:15 UTC+2, MichD a écrit :
Le 24/05/16 à 09:27, ThierryP a écrit :
> ThisWorkbook.Worksheets("Paramètres").Shapes("Ellipse 32").Copy

Bonjour,

Si tu crées des petits dessins qui sont ceux de Microsoft à par tir du
menu "Insérer" du ruban / Formes / ,

Comme tu as un exemplaire office de langue française, Excel te parle en
français dans l'interface de la feuille de calcul, mais VBA est
unilingue anglais peu importe la langue de l'usager. Si tu rebaptises
ces objets d'un nom original, tu ne devrais plus avoir ce problème!

Sélectionne l'objet inséré, et, en utilisant de la section à gauche de
la barre des formules, donne-lui un nom autre que celui qu'il a par
défaut. Tu pourras utiliser ce nom dans la ligne de code "Shapes("Le nom
donné").

Pour ce qui est du reste, si tu ne publies pas ton code, il est
difficile de deviner ce qui ne va pas!


MichD
Publicité
Poster une réponse
Anonyme