[VBA Excel] Verifier validité valeur Combobox
Résolu/Fermé
zabouall
Messages postés
6
Date d'inscription
mardi 27 mai 2008
Statut
Membre
Dernière intervention
9 juin 2008
-
30 mai 2008 à 09:26
lermite222 Messages postés 8724 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 - 30 mai 2008 à 10:07
lermite222 Messages postés 8724 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 - 30 mai 2008 à 10:07
Bonjour,
j'ai mis en place une combobox avec une liste de valeur. J'ai choisi la propriété fmStyleDropDownCombo, qui autorise la saisie manuelle de valeurs.
Je souhaite m'assurer que la valeur inscrite est valide afin de ne pas générer d'erreur. J'aimerai l'affichage d'un avertissement.
Je crois q'uil faut utiliser l'evenement "'Change", mais je ne sais pas comment!
Merci pour votre aide!!
j'ai mis en place une combobox avec une liste de valeur. J'ai choisi la propriété fmStyleDropDownCombo, qui autorise la saisie manuelle de valeurs.
Je souhaite m'assurer que la valeur inscrite est valide afin de ne pas générer d'erreur. J'aimerai l'affichage d'un avertissement.
Je crois q'uil faut utiliser l'evenement "'Change", mais je ne sais pas comment!
Merci pour votre aide!!
A voir également:
- [VBA Excel] Verifier validité valeur Combobox
- Liste déroulante excel - Guide
- Verifier un lien - Guide
- Si et excel - Guide
- Word et excel gratuit - Guide
- #Valeur excel somme - Guide
1 réponse
lermite222
Messages postés
8724
Date d'inscription
dimanche 8 avril 2007
Statut
Contributeur
Dernière intervention
22 janvier 2020
1 191
30 mai 2008 à 10:07
30 mai 2008 à 10:07
Pour arriver à tester le texte du combo c'est pas aussi simple que tu dit.
Colle ce code dans la feuille du combo
Dim EditLigne As Boolean
Ensuite deux solutions sont possibles ou les deux ensemble
Première solution, l'utilisateur doit taper enter pour valider sa modif.
Deuxième solution, le test est fait quand l'utilisateur sélectionne autre chose que le combo.
Voila deux solutions possibels.
A+
Colle ce code dans la feuille du combo
Dim EditLigne As Boolean
Private Sub ComboBox1_Change() If ComboBox1.ListIndex = -1 Then '-1 quand la ligne est éditée EditLigne = True End If End Sub
Ensuite deux solutions sont possibles ou les deux ensemble
Première solution, l'utilisateur doit taper enter pour valider sa modif.
Private Sub ComboBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer) Dim Txt As String 'Pour tester l'appuit de la touche Enter. If KeyCode = 13 And EditLigne Then 'vérifier le texte du combo. Txt = ComboBox1.Text Stop 'si bon valider '... ComboBox1.AddItem Txt EditLigne = False End If End Sub
Deuxième solution, le test est fait quand l'utilisateur sélectionne autre chose que le combo.
Private Sub ComboBox1_LostFocus() 'Pour pas tester l'appuit de la touche Enter. 'Tester quand quitte le combo If EditLigne Then 'vérifier le texte du combo. Txt = ComboBox1.Text Stop 'si bon valider '... ComboBox1.AddItem Txt EditLigne = False End If End Sub
Voila deux solutions possibels.
A+