Séparer les données d'un combobox

Salut le forum,

supposons que, dans un combobox, j'ai les données :

Assiettes blanches et Verres bleus

Assiettes rouges et Verres noirs

Assiettes bleus et Verres jaunes

je sélectionne la donnée suivante :

Assiettes rouges et Verres noirs

Comment, dans un premier label, puis-je obtenir le résultats "Assiettes rouges" et dans un deuxième "Verres noirs"?

Merci pour votre aide

Re-,

regarde le fichier joint :

Le code :

Dim Cel As Range

Private Sub ComboBox2_Change()
x = InStr(1, Me.ComboBox2, " et ", 1)
Me.Label1.Caption = Left(Me.ComboBox2, x - 1)
Me.Label2.Caption = Right(Me.ComboBox2, Len(Me.ComboBox2) - x - 3)
End Sub

Private Sub ComboBox2_DropButtonClick()
Set Titres = CreateObject("Scripting.Dictionary")
    For Each Cel In [titre]
        If Not Titres.Exists(Cel.Value) Then Titres.Add Cel.Value, Cel.Value
    Next Cel
Me.ComboBox2.List = Application.Transpose(Titres.items)
End Sub
Private Sub UserForm_Initialize()
With Sheets("Feuil1")
    Derlig = .[H65000].End(xlUp).Row
    .Range("H2:H" & Derlig).Name = "titre"
End With
End Sub

le fichier :

https://www.excel-pratique.com/~files/doc/exemple_combo_ericF_v2.xls

Re,

dans ce code, je reçois le message "variable not defined" pour derlig

Private Sub UserForm_Initialize()

With Sheets("Calendrier")

derlig = .[H65000].End(xlUp).Row

.Range("H2:H" & derlig).Name = "titre"

End With

End Sub

Re-,

Eric, 460 messages, pour te rendre compte que tu es en "Option Explicit"?

Rajoute en début de code :

Dim Derlig As Long

Ce type de message veut dire ce que je t'ai mis plus haut, il te faut déclarer toutes tes variables (bon réflexe, que je n'ai pas encore........ )

Re,

le problème, c'est que je ne comprends pas toujours le code que vous me soumettez. Je suppose donc que je dois déclarer "Titres" as object et "x" as string ou variant.

Enfin, disons que pour l'instant, rien ne fonctionne.

https://www.excel-pratique.com/~files/doc/Book1.zip

Re-

tu fais une demande avec Verres et Assiettes

Dans ton fichier, c'est Verres vs Assiettes.......

En cliquant sur F1, tu verras l'aide sur la fonction Instr.....

remplace :

x = InStr(1, Me.ComboBox1, " et ", 1)

par :

x = InStr(1, Me.ComboBox1, " vs ", 1)

Edit : J'oubliais, x, n'est pas "Variant", mais un nombre, donnant la position de la chaîne cherchée, donc, déclare-le en Integer (au cas où), sinon en Byte

Super!

Merci beaucoup felix.

Rechercher des sujets similaires à "separer donnees combobox"