Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Excel 2013 - Souci avec les barres de menus persos

2 réponses
Avatar
ThierryP
Bonjour tout le monde,

Je continue =C3=A0 d=C3=A9couvrir les joies de Excel 2013, ayant r=C3=A9sis=
t=C3=A9 jusqu'au bout avec mon Office XP !

Derni=C3=A8re en date :
Avec ce bout de code adapt=C3=A9 (Merci Denis !!!), je cr=C3=A9ais une barr=
e d'outils personnalis=C3=A9e :
'------------------------------
Set BarreMenu =3D Application.CommandBars.Add(NomBar)
Set BoutonMenu =3D BarreMenu.Controls.Add(msoControlButton)
With BoutonMenu
.Style =3D msoButtonIconAndCaption
ThisWorkbook.Worksheets("Param=C3=A8tres").Shapes("Ellipse 32"=
).Copy
.PasteFace
.Enabled =3D Actif
'.FaceId =3D 548
J'obtenais une jolie barre avec des ronds de couleur (Ellipse xx) et un Fac=
eId correspondant. J'ai d=C3=A9j=C3=A0 du abandonner le FaceID et maintenan=
t, de mani=C3=A8re al=C3=A9atoire (pour autant que je puisse en juger...), =
j'ai un message d'erreur sur la ligne ThisWorkBook.Worksheets etc... (La m=
=C3=A9thode PasteFace a =C3=A9chou=C3=A9e) et donc ma barre ne se cr=C3=A9e=
pas, ou bien pas compl=C3=A8tement (il manque quelques boutons).
Ayant remarqu=C3=A9 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=C3=A9... Ben non..=
.. M=C3=AAme comportement capricieux.

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

ThierryP

2 réponses

Avatar
MichD
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
Avatar
ThierryP
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