Bonjour,
Je cherche un tutorial pour concevoir une barre d'outils en VBA (Excel 2003)
J'ai créé des menus et je voudrais pouvoir aussi ajouter des boutons dans une barre d'outils
Merci pour vos conseils
Bonjour,
Je cherche un tutorial pour concevoir une barre d'outils en VBA (Excel 2003)
J'ai créé des menus et je voudrais pouvoir aussi ajouter des boutons dans une barre d'outils
Merci pour vos conseils
C'est ça que tu cherches ?
Création d'une barre de menus personnalisée
Oui merci ca devrait être ça
Barre de menus, barre d'outils, ce sont les mêmes principes?
Où ça au début?
J'ai bien créé une barre de menus ave cl'aide de cet article mais je ne vois pas ce qui fait qu'ne barre est définie comme barre d'outils plutôt que barre de menus
Tu pourrais expliquer la différence que tu entends entre barre de menus et barre d'outils ?
Pour moi je l'avais compris ainsi :
- barre de menus : Menus textuels
- barre d'outils : barre avec des boutons
Et tout est dans le tutoriel de Fring, mais peut-être ai-je mal compris.
Des captures d'écran de ce que tu veux pourraient nous aider à mieux comprendre.
Pour moi les menus ce sont les menus déroulants comme les menus Fichier/Edition/Affichage/Favoris/Outils/? de internet explorer.
Barre d'outils j'avais compris que c'était les boutons que l'on affcihe sous les menus.
La syntaxe pour les boutons semble identique à celle des menus et je ne vois pas quel paramètre fait que c'est un menu qui s'affiche plutot qu'un bouton
Bonjour,
Regarde le point 2.5 du tuto
Cdlt
Et bien c'est juste un problème de vocabulaire.
En lisant un peu plus le tuto, ce que je comprends c'est qu'en principe il s'agit toujours de barre d'"outils" (sachant qu'il peut y avoir dedans des boutons, mais aussi du texte ou des listes déroulantes comme pour le choix de la police par ex.), sauf dans le cas exceptionnel du chapitre 1.2.3. MenuBar
Y'a plus qu'à essayer
Je viens de voir la réponse de l'auteur himself (coucou), apparemment il n'a pas forcément compris comme moi...
Salut Caro
Bin...il me semble avoir compris que jlgcf cherche la syntaxe pour insérer un menu déroulant contenant des "outils" (boutons de commande) ou d'autres "menus" (liste de choix) contenant eux mêmes des boutons, etc...
le point 2.5 du tuto reprend un mixe de différentes possibilités avec un exemple en image, ce qui devrait l'aider à trouver ce qu'il veutje ne vois pas quel paramètre fait que c'est un menu qui s'affiche plutot qu'un bouton
.
Non je ne cherche pas a faire un menu deroulant.
j'ai utilisé ce tuto pour mettre des boutons sous les menus mais la syntaxe est tres proche de celle que j'ai deja utilisé pour installer des menus genre Fichier/edition etc.. et je me demandais seulement qu'est ce qui differenciait les 2 dans le code
oui ok...ce n'est pas un menu déroulant...oublie le "déroulant" mais je répète ce que j'ai déjà dit 2x plus haut, regarde le point 2.5 et tu comprendras la différence de syntaxe entre un menu (appelé sous menu dans le tuto) et un bouton de commande
Pour ajouter un bouton
Pour ajouter un menu dans lequel tu pourras insérer des boutons (ou d'autres menus)
Code : Sélectionner tout - Visualiser dans une fenêtre à part MaBarre.Controls.Add(msoControlButton)
Si ce n'est pas ça, je ne vois pas de quoi tu parles
Code : Sélectionner tout - Visualiser dans une fenêtre à part MaBarre.Controls.Add(msoControlPopup)
.
J'ai compris...
Je dois être fatigué
Merci
Bonjour à tous (salut Fring et Caro )
Je pense avoir compris, il ne peut y avoir qu'une barre de menu, mais de multiples barre d'outils.
Lors de la création de la barre, si tu mets la propriétés MenuBar à True, tu auras une barre de menu, sinon ce sera une barre d'outil. Regardes dans la partie 1.2. Les arguments
Philippe
Une petite question subsidiaire :
si j'exécute plusieurs fois le code :
la barre ne se crée pas plusieurs fois (ce qui m'arrange) mais je n'ai pas non plus d'erreur (barre existante)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Dim MaBar As CommandBar, Btn1, Btn2, Btn3, Btn4, Btn5, Btn6, Btn7, Btn8 Set MaBar = Application.CommandBars.Add("Ma barre", msoBarTop)
Pourquoi?
merci
Ce code
marchait parfaitement depuis quelques jours et maintenant j'ai systématiquement un message d'erreur sur la ligne "Set MaBar..."
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Dim MaBar As CommandBar, Btn1, Btn2, Btn3, Btn4, Btn5, Btn6, Btn7, Btn8 Set MaBar = Application.CommandBars.Add("Ma barre", msoBarTop)
Erreur d'éxecution 5
Appel de procédure ou argument incorrect
Je n'ai rien changé au module contenant le code
D'où peut venir ce problème? Peut-il s'agir d'un paramétrage d'Excel?
Merci pour votre aide
A tout hasard, remplace msoBarTop par 1.
Si ça fonctionne, c'est un problème de version. Tu as changé de version ou fait une mise à jour d'Excel ou d'Office ?
Parfois, l'argument du paramètre change mais la valeur, elle, ne change pas.
Tu peux tester
Une autre raison peut être que ta barre existe déjà mais n'est pas visible. Tu peux vérifier ça dans Excel, Menu Affichage -> Barres d'outils. Tu peux également tester son existence par soft. Mais si elle n'existe pas tu auras une erreur. Il est alors nécessaire d'ajouter une gestion d'erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part Set MaBar = Application.CommandBars.Add("Ma barre", 1)
Tu dis
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 Sub Test() Dim MaBar As CommandBar On Error Resume Next Set MaBar = Application.CommandBars("Ma barre") If MaBar Is Nothing Then 'ton code pour la créer Set MaBar = Application.CommandBars.Add("Ma barre", msoBarTop) End If On Error GoTo 0 End Sub
Merci,
Rien dans Affichage / Barer d'outils
Je n'ai pas changé de version - Toujours Excel 2003 mais possible un update de cette version - Cela se fait automatiquement depuis le réseau et on ne le sait pas toujours
Je vais essayer les solutions que tu me proposes
Merci
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager