Vérifier présence d'une valeur dans un ComboBox

Bonjour à tous,

Voici mon problème : j'ai un combobox avec des noms rentrés à l'intérieur ("Pierre", "Paul", "Jacques").

J'aimerais exécuter une macro quand la valeur rentrée dans mon comboBox n'est pas déjà contenue dans la liste (ici donc, si je rentre "Rémi", j'aimerais que ma macro se lance, si je rentre / ou sélectionne "Paul", elle ne se lance pas puisque la valeur est déjà dans la liste).

Voici la fonction qui teste la présence d'une valeur dans le combobox.

Public Function TestComboBoxValue(MyComboBox As ComboBox, MyValue As String)

TestComboBoxValue = False ' Par défaut élement non présent
For i = 0 To MyComboBox.ListCount - 1 ' Boucle sur tous les éléments d
la ComboBox
If MyComboBox.List(i) = MyValue Then
MyValue
TestComboBoxValue = True ' Element présent
End If 'fin de la condition
Next i

End Function

Voici mon instruction :

valeur = ComboBox1.Value

If TestComboBoxValue(ComboBox1, valeur) Then
' ne rien faire '
Else
' lancer ma macro '
End If

Quand j'utilise la valeur "Rémi" ma macro fonctionne bien. Cependant, avec valeur = ComboBox1.Value, mon code ne fonctionne pas (il considère toujours que ma valeur s'y trouve).

Je crois que dès lors où on rentre un élément dans la combobox, cet élément y appartient automatiquement.

Comment contourner ce problème ?

Merci beaucoup.

Bonjour,

Quid du problème ici https://forum.excel-pratique.com/excel/enorme-probleme-du-a-un-combobox-167220

éviter de vous éparpiller SVP et répondez déjà aux sujets précédents

Bonjour,

Private Sub UserForm_Initialize()
Me.ComboBox1.List = Array("Pierre", "Paul", "Jacques")
Debug.Print "Paul Existe: " & TestComboBoxValue(ComboBox1, "Paul"), "Cheval Existe: " & TestComboBoxValue(ComboBox1, "Cheval")
End Sub

Public Function TestComboBoxValue(MyComboBox As ComboBox, MyValue As String) As Boolean
t = "®" & Join(Application.Transpose(MyComboBox.List), "®") & "®"
TestComboBoxValue = CBool(InStr(1, t, "®" & MyValue & "®"))

End Function

Merci beaucoup dysorthographie, ça fonctionne parfaitement comme je le voulais !

Ecureuil_curieux

Vous n'avez pas répondu à ma sollicitation

Sans réponse de votre part, je me permettrais de bloquer tout nouveau post

A bon entendeur

Bonjour BrunoM45.

Je ne vous ai pas répondu au post précédent concernant mon problème de ComboBox car je ne peux pas publier mon projet entier (confidentiel) sur internet. J'ai réussi à résoudre mon problème mais je ne savais pas comment supprimer le post.

Par ailleurs, il me semble dommage que vous me fassiez du chantage en m'empêchant de poster à nouveau si je ne vous réponds pas. Je ne m'éparpille pas dans les sujets, je pose seulement des questions qui m'arrivent en temps réel et j'aurai pu supprimer mon post précédent si je savais comment le faire.

Bonne journée.

Bonjour,

Je ne vous fais pas du "chantage", je vous informe simplement que lorsqu'on pose une question sur un forum,
qu'un contributeur y répond, il est de politesse et d'honnêteté d'y répondre !

D'autant plus oserais-je dire quand il s'agit d'un modo

Maintenant, si cela vous déplait, vous avez tout à loisir de demander la suppression de votre compte et d'aller sur d'autre forum

Nous avons une charte, merci de la respecter

Effectivement, BrunoM45, vous aurez plaisir à voir que je réponds à toutes les personnes qui ont la gentillesse de m'aider sur un questionnement. Cependant, quand la réponse est cynique et désagréable, par deux fois, et que mon problème est résolu, je ne prends pas le temps de répondre pour avoir des remarques supplémentaires.

Ainsi, je supprimerai mon compte à regret puisque tous les gens qui m'ont répondu jusqu'alors ont été particulièrement bienveillants et respectueux et que j'ai bien pris le temps de répondre à chacun, quand le respect était de mise.

Bonne journée.

Re,

C'est vraiment très étrange de voir les autres comme ils ne sont pas...
Peut-être devriez vous, vous regarder dans un miroir

"quand la réponse est cynique et désagréable, par deux fois"... en MP si ça vous chante vous me direz ou sont les 2 fois !?

Et si c'est ma réponse humoristique ci-dessous que j'ai mis à la poubelle (du coup) que vous appelez comme ça...
je pense effectivement qu'il faut vous faire soigner

image

Navré que vous le preniez ainsi, je clos le sujet.

Rechercher des sujets similaires à "verifier presence valeur combobox"