Excel Form VBA Combobox reset

Cela devrait être facile, mais je ne peux rien find pour résoudre. J'ai un formulaire Excel en utilisant VBA. La feuille Excel comporte quatre colonnes remplies de données et le formulaire affiche ces champs.

L'user sélectionne alors une valeur dans une combobox, utilise un button de command pour soumettre les réponses et les valeurs de la combobox sont écrites dans la feuille Excel.

L'user utilise alors un button de command pour avancer une ligne vers le bas dans la feuille de calcul et charger les quatre valeurs d'une nouvelle ligne. Tout cela fonctionne très bien.

La question que j'essaie de résoudre est que la combobox rest sélectionnée pour la valeur dans la sélection précédente. Je voudrais réinitialiser la combobox, donc rien n'est sélectionné et l'user doit effectuer une sélection pour la prochaine ligne.

Voici le code que j'utilise pour charger la combobox et définir une variable pour ce que l'user a sélectionné. Impossible de récupérer le combobox à l'état par défaut après l'envoi du formulaire par l'user.

Private Sub cbDesAccWanted_Change() Select Case cbDesAccWanted.Text Case "Yes" desacc = "Yes" Case "No" desacc = "No" End Select cbDesAccWanted.Text = desacc End Sub Private Sub cbDesAccWanted_DropButtonClick() cbDesAccWanted.List = Array("Yes", "No") End Sub 

Il existe deux façons de réinitialiser la combobox. Faites votre choix:

1

 cbDesAccWanted.Value = Null 

2

 cbDesAccWanted.ListIndex = -1 

la ligne

cbDesAccWanted.Text = desacc

est totalement inutile.

L'utilisation de cbDesAccWanted_DropButtonClick n'est pas le bon endroit pour remplir la list des valeurs. Cette list devrait être configurée lorsque le formulaire s'affiche pour l'user. (désactive les valeurs qu'il montre chnages, ce qui le modifie quand la ligne change ou quelque chose, pas lorsque l'user clique dessus)

Donc, lorsque l'user clique sur la flèche vers le bas pour passer à l'logging thenext, incluez la ligne suivante

 Me.cbDesAccWanted.text = Me.cbDesAccWanted.List(1) 

Note (1) accéder au 2ème élément de la list qui est numéro

Donc, réinitialisez-le à la valeur par défaut de Non.

D'accord.