(RESOLU par MAPOMME) RECHERCHE SANS DOUBLAN ( erreur .??)

chaelie2015

XLDnaute Accro
Bonjour Forum
ci joint un fichier qui explique mon souci , a savoir
j'ai crée un ComboBox (liste sans doublant et sans vide) QUI FONCTIONNE PARFAITEMENT mais le souci selon l'exemple en fichier joint
si je cherche dans le combobox : marché N° 7 je souhaiterai avoir le résultat Co-Contractant007 MAIS CE N'AI PAS LE CAS ??
puis je avoir votre aide
merci par avance
SALUTATIONS
 

Fichiers joints

Dernière édition:

ted1057

XLDnaute Occasionnel
Re : RECHERCHE SANS DOUBLAN ( erreur .??)

Bonjour,

Je ne sais pas si cela est normal mais tu as deux fois co-contractant 4. En changeant par co-contratant5, cela fonctionne très bien. Je ne sais pas si cela est la réponse
 

chaelie2015

XLDnaute Accro
Re : RECHERCHE SANS DOUBLAN ( erreur .??)

Bonjour Ted1057
merci d’avoir répondu,
Oui c'est normal d'avoir 02 marché pour même cocontractant.
MERCI.
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Re : RECHERCHE SANS DOUBLAN ( erreur .??)

Bonjour chaelie2015,

Ne renvoie que le premier contractant pour un marché donné :
VB:
Private Sub ComboBox1_Change()
  With ComboBox1
    TextBox1 = ""
    If .ListIndex > 0 Then TextBox1 = Sheets("Feuil1").Columns(1). _
        Find(.List(.ListIndex), Sheets("Feuil1").Range("a1"), _
        xlValues, xlWhole).Offset(, 1)
  End With
End Sub
 

chaelie2015

XLDnaute Accro
Re : RECHERCHE SANS DOUBLAN ( erreur .??)

Bonjour Mapomme
merci pour la réponse, c'est exactement ce que je cherchais
PBLM est résolut
SALUTATIONS
 

laetitia90

XLDnaute Barbatruc
Re : (RESOLU par MAPOMME) RECHERCHE SANS DOUBLAN ( erreur .??)

bonjour chaelie :) mapomme:)

une autre facon de l'ecrire

code user

Code:
Dim t(), t1(), i As Long, x As Long, y As Byte, m As Object
Private Sub UserForm_Initialize()
 Set m = CreateObject("Scripting.Dictionary")
 t = Feuil1.Range("a2:B" & Feuil1.Cells(Rows.Count, 1).End(3).Row)
 ReDim t1(1 To UBound(t), 1 To 2)
 For i = 1 To UBound(t)
 If Not m.Exists(t(i, 1)) And t(i, 1) <> "" Then
  m.Add t(i, 1), t(i, 2)
  x = x + 1
  For y = 1 To 2: t1(x, y) = t(i, y): Next y
 End If
 Next i
 ComboBox1.List = t1
End Sub
Private Sub ComboBox1_Change()
 TextBox1 = ComboBox1.List(ComboBox1.ListIndex, 1)
End Sub
 

Créez un compte ou connectez vous pour répondre

Vous devez être membre afin de pouvoir répondre ici

Créer un compte

Créez un compte Excel Downloads. C'est simple!

Connexion

Vous avez déjà un compte? Connectez vous ici.

Haut Bas