CommandBar, .OnAction et paramètre

  • Initiateur de la discussion Initiateur de la discussion Chewbi
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Chewbi

XLDnaute Nouveau
Bonjour,

La page de forum : https://www.excel-downloads.com/threads/barre-et-onaction.63285/
traite presque de la même chose mais la transcription entre le problème traité et le mien ne fonctionne pas !! Pouvez-vous m'aider ?

Mon problème est le suivant :

J'ai créé une CommandBar et des ControlButton dedans. Je veux que ces boutons lance du code. Il y a .OnAction qui fonctionne très bien pour les macros basiques mais moi j'ai que des procédures avec des paramètres (au format texte).

Voici le code que j'ai saisie :

Set Outil_Protect = CommandBars("Planning").Controls.Add(Type:=msoControlButton, temporary:=True)
With Outil_Protect
.Caption = "Protection"
.Enabled = True
.FaceId = 519
.OnAction = "xls_protect('hidden')"
.BeginGroup = True
End With

hidden etant ma chaine paramètre.

J'ai essayé des tas de truc dans .OnAction mais j'ai toujours un message comme quoi la macro blablabla ne peut être trouvée.

Il y a-t-il une solution avec .OnAction ou faut-il passer par un autre moyen ?

Merci d'avance
 
Re : CommandBar, .OnAction et paramètre

bonsoir le forum, Chewbi,

sauf erreur de ma part, derrière .OnAction = on doit trouver une macro du classeur mise entre guillemets.
.OnAction appel et demande l'exécution d'une macro existante dans le classeur.
si vous avez la possibilité de joindre un petit fichier cela permettrait de voir plus concrètement ce qui cloche.
 
Re : CommandBar, .OnAction et paramètre

Salut Chewbi
Bonjour le fil
Bonjour le Forum

Arff un jour j'ai moi aussi fait ce genre de Barre de menu et après de longues recherches et multiples essais ,j'ai réussi ce à quoi je voulais arriver
passer un ou plusieurs arguments à une fonction et voilà un extrait de ce que j'ai utilisé
ma fonction s'appelle Recup_Donnees
il y a une constante qui est le début du nom des feuilles Semaine (Exemple
"Sorties journalieres_1)
Public Const ST As String = "Sorties journalieres_"
il faut
dans Créer_Menu (c'est un extrait)
Code:
With .Controls.Add(msoControlButton)
 .Caption = "Données Semaines : " & [COLOR=Red]T1[/COLOR] & " " & "à" & " " & [COLOR=Red]T2[/COLOR]
 .OnAction = "'Recup_Donnees """ & [COLOR=Red]T1[/COLOR] & """ , """ & [COLOR=Red]ST[/COLOR] & """ , """ & [COLOR=Red]T2[/COLOR] & """'"
         End With
      With .Controls.Add(msoControlButton)
 .Caption = "Données Semaines : " & "[COLOR=Red]1[/COLOR]" & " " & "à" & " " & [COLOR=Red]T2[/COLOR]
 .OnAction = "'Recup_Donnees """ & "[COLOR=Red]1[/COLOR]" & """,""" & [COLOR=Red]ST[/COLOR] & """,""" & [COLOR=Red]T2[/COLOR] & """'"
      End With
ceci et ma macro pour le test
Code:
Sub Recup_Donnees(ByVal [COLOR=Red]S1[/COLOR] As Byte, Optional ByVal [COLOR=Red]I [/COLOR]As String, Optional ByVal [COLOR=Red]S2[/COLOR] As Byte)
Dim ST As String
Dim Col As Integer
Dim Item As Byte
        For Item = [COLOR=Red]S1[/COLOR] To[COLOR=Red] S2[/COLOR]
 
                    MsgBox I & Item

        Next

End Sub
je vais donc passer en argument les bornes (numéros de Semaine à lister)
exemple
T1 = 4 et T2 = 5
'ici je récupère les semaines 4 à 5
.OnAction = "'Recup_Donnees """ & T1 & """ , """ & ST & """ , """ & T2 & """'"
ici le premier argument est en dur seul le deuxième chiffre et variable
.OnAction = "'Recup_Donnees """ & "1" & """,""" & ST & """,""" & T2

je récupère ainsi les semaines 1 à la Semaine T2

en espérant avoir pu t'aider
n'hésite pas si besoin
Bonne Journée
 
Dernière édition:
Re : CommandBar, .OnAction et paramètre

Merci à tous pour votre aide !!!! Vous avez résolu mon soucis.

Ce Forum est vraiment de l'or !!!! Et c'est grâce à cette collaboration active... Il faudrait prendre exemple pour la vie quotidienne ! ...🙄
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
2
Affichages
1 K
Réponses
2
Affichages
2 K
Retour