OVH Cloud OVH Cloud

Match Required

2 réponses
Avatar
Michel
Bonsoir
J'ai un combobox avec un Rowsource définit : Maliste
J'ai mis la propriété MatchRequired à True
Si l'on saisit quelque chose de différent, un msgbox "Valeur de propriété
non valide" surgit.
Je souhaite qu'après ce message, le combobox se vide
ou bien que je puisse avoir un msgbox plus parlant, puis effacement du
combobox
Merci beaucoup
Michel

2 réponses

Avatar
Hervé
Salut Michel,
En effectuant quelques modif. Supprimer RowSource, mettre MatchRequired à
False. Teste en mettant les lignes ci-dessous dans le module de ta form. Une
fois le Combo vide je ne sais pas ce que tu veux faire ? :o(( enfin, teste
et adapte :

Private Sub UserForm_Initialize()
Dim I As Integer
For I = 1 To Range("MaListe").Count
ComboBox1.AddItem Range("MaListe")(I)
Next I
End Sub

Private Sub ComboBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
With ComboBox1
If .MatchFound = False Then
MsgBox "La valeur saisie ne peut être utilisée !" & _
vbCrLf & _
"Faire un choix dans la liste."
Cancel = True
.Text = ""
.Clear
End If
End With
End Sub

Hervé.

"Michel" a écrit dans le message news:

Bonsoir
J'ai un combobox avec un Rowsource définit : Maliste
J'ai mis la propriété MatchRequired à True
Si l'on saisit quelque chose de différent, un msgbox "Valeur de propriété
non valide" surgit.
Je souhaite qu'après ce message, le combobox se vide
ou bien que je puisse avoir un msgbox plus parlant, puis effacement du
combobox
Merci beaucoup
Michel




Avatar
Michel
Merci beaucoup Hervé
C'est impeccable
Michel

"Hervé" a écrit dans le message de news:

Salut Michel,
En effectuant quelques modif. Supprimer RowSource, mettre MatchRequired à
False. Teste en mettant les lignes ci-dessous dans le module de ta form.
Une
fois le Combo vide je ne sais pas ce que tu veux faire ? :o(( enfin,
teste
et adapte :

Private Sub UserForm_Initialize()
Dim I As Integer
For I = 1 To Range("MaListe").Count
ComboBox1.AddItem Range("MaListe")(I)
Next I
End Sub

Private Sub ComboBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
With ComboBox1
If .MatchFound = False Then
MsgBox "La valeur saisie ne peut être utilisée !" & _
vbCrLf & _
"Faire un choix dans la liste."
Cancel = True
.Text = ""
.Clear
End If
End With
End Sub

Hervé.

"Michel" a écrit dans le message news:

Bonsoir
J'ai un combobox avec un Rowsource définit : Maliste
J'ai mis la propriété MatchRequired à True
Si l'on saisit quelque chose de différent, un msgbox "Valeur de propriété
non valide" surgit.
Je souhaite qu'après ce message, le combobox se vide
ou bien que je puisse avoir un msgbox plus parlant, puis effacement du
combobox
Merci beaucoup
Michel