Problème avec un commandbarcombobox

WILFRIED

XLDnaute Impliqué
Bonjour a tous,

j'ai fait une recherche sur le forum pour les "commandbarcombobox" mais la solution proposé pour récupérer la sélection du dit "commandbarcombobox" ne fonctionne pas j'ai le message suivant :
"erreur d'execution : '91' "
Variable objet ou variable de bloc with non définit.

Voici le code que j'utilise

'création :
Sub crea_bar()
Set fls_bd = Worksheets("bd")
Set clas_gestion = ActiveWorkbook
'création de la bar perso
Set myBar = CommandBars.Add(Name:=nm_bar, _
Position:=msoBarTop, Temporary:=True)
myBar.Visible = True
'création du bouton et association de l'apparence,action et texte
With myBar
Set bouton1 = .Controls.Add(Type:=msoControlButton)
With bouton1
.Caption = nm_bt1
.FaceId = id_bt1
.Style = msoButtonIconAndCaption
.OnAction = "crea_compte" 'ok
End With
Set bouton2 = .Controls.Add(Type:=msoControlComboBox, Temporary:=True)
With bouton2
With fls_bd
.Visible = xlSheetVisible
.Select
End With
Range("A2", Range("A65536").End(xlUp)).Select
For Each m_cell In Selection
.AddItem m_cell.Value
Next
fls_bd.Visible = xlSheetHidden
.Caption = "selectionné le compte à ouvrir"
.OnAction = "bouton2_change" 'ok

End With
Set bouton3 = .Controls.Add(Type:=msoControlButton, before:=2, Temporary:=True)
With bouton3
.Caption = nm_bt3
.FaceId = id_bt3
.Style = msoButtonIconAndCaption
.OnAction = "ajout_op"
End With
Set bouton4 = .Controls.Add(Type:=msoControlButton, before:=2, Temporary:=True)
With bouton4 'ok
.Caption = nm_bt4
.FaceId = id_bt4
.Style = msoButtonIconAndCaption
.OnAction = "import_compte"
End With
End With
End Sub

Private Sub bouton2_Change() '(ByVal Ctrl As CommandBarComboBox)
Stop
MsgBox bouton2.Text
End Sub

dans l'aide il parle d'utiliser un module de classe pour le fonctionnement événementielle mais je n'ai pas réussi à le faire fonctionner.

Si qu'elle qu'un avait une idée, je suis preneur.

A+ et merci d'avance

Ps :
-j'ai mis un espion sur bouton2 et j'ai pour valeur nothing
- mes variables sont déclarer dans un module variable en Public
 
Dernière édition:

WILFRIED

XLDnaute Impliqué
Re : Problème avec un commandbarcombobox

Re

Eureka!!!

J'ai trouvé D'où cela venait.

Set bouton2 = .Controls.Add(Type:=msoControlComboBox, Temporary:=True)

j'ai enlevé le temporary et cela fonctionne...:confused:

Bon je continue mon projet.

A+

Bouuuu!!!:(:( En fait cela n'as marcher que 2 fois après cela me remet le même message..

Il faut donc que je trouve une nouvelle solution. Je vais chercher du côté des modules de classe...

A+
 
Dernière édition:
G

Guest

Guest
Re : Problème avec un commandbarcombobox

Hello WilFried,

MP à dit:
Pour l'instant je triche avec la fonction onaction mais le PB c'est qu'il faut que je réinitialise ma bar à chaque fois que je tape du code VBA... Donc lourd pour le débugging.

Que ce soit simplement ou par module de classe le problème restera le même. Dès que tu activeras VBE pour faire une modification VBA, il faudra réinitialiser le module de classe.

A+
 

Discussions similaires

Statistiques des forums

Discussions
312 358
Messages
2 087 581
Membres
103 598
dernier inscrit
f-laurent