Fonction find prenant en compte 2 critères entrés dans des combobox

arnaud95000 Messages postés 46 Date d'inscription vendredi 3 août 2007 Statut Membre Dernière intervention 18 décembre 2007 - 18 déc. 2007 à 09:27
bigfish_le vrai Messages postés 1835 Date d'inscription vendredi 13 mai 2005 Statut Membre Dernière intervention 20 novembre 2013 - 18 déc. 2007 à 17:33
Bonjour,
j'ai une petite question sou VBA, en fait j'ai deux combobox et je voulais savoir comment utiliser la fonction find, en prenant en compte ces 2 critères car pour le moment j'ai:

Sub affiche_result_Click()
Application.ScreenUpdating = false
mavaleur1 = combobox1   
mavaleur2 = combobox2
ligne = Worksheets("résultats de la recherche").Range("A65536").End(xlUp).Row    
With Worksheets("analyse").Range("E6:E5000")     
    Set c = .Find(mavaleur1, LookIn:=xlValues)
    If Not c Is Nothing Then
        firstAddress = c.Address
        Do
            i = i + 1
            maligne = c.Row
            Worksheets("résultats de la recherche").Range("A" & i + ligne & ":p" & i + ligne).Value = Worksheets("analyse").Range("A" & maligne & ":p" & maligne).Value
            Set c = .FindNext(c)
        Loop While Not c Is Nothing And c.Address <> firstAddress
    End If
End With
Worksheets("résultats de la recherche").Select
Application.ScreenUpdating = True
End Sub

Merci et bonne journée.
A voir également:

6 réponses

cs_mabrouklepoux Messages postés 84 Date d'inscription lundi 6 novembre 2000 Statut Membre Dernière intervention 25 juillet 2008 1
18 déc. 2007 à 09:55
tu veux les cellules qui contiennent tes deux valeur ?
fais un find de la seconde valeur sur les résultats du premier find non ?
0
arnaud95000 Messages postés 46 Date d'inscription vendredi 3 août 2007 Statut Membre Dernière intervention 18 décembre 2007
18 déc. 2007 à 10:06
Bonjour, j'ai un petit problème sous VBA, et j'en suis sur que parmi vous certains et certaines ont été confronté, en fait j'ai deux tableaux, le premier avec le nom des clients et le second avec le nom du client le montant
0
cs_mabrouklepoux Messages postés 84 Date d'inscription lundi 6 novembre 2000 Statut Membre Dernière intervention 25 juillet 2008 1
18 déc. 2007 à 10:28
manquerais pas un bout là ?
0
cs_MPi Messages postés 3877 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 17 août 2018 23
18 déc. 2007 à 11:08
Si tu utilisais une colonne vide pour concaténer tes 2 valeurs recherchées, tu pourrais utiliser Find pour rechercher ces 2 valeurs d'un seul coup.

Habitues-toi à déclarer tes variables. Sinon, tu risques d'avoir de drôles de surprises...

Plutôt que définir un Range comme tu le fais, mets plutôt toute la colonne
<strike>With Worksheets("analyse").Range("E6:E5000")</strike>
With Worksheets("analyse").Columns("E")

MPi²
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
bigfish_le vrai Messages postés 1835 Date d'inscription vendredi 13 mai 2005 Statut Membre Dernière intervention 20 novembre 2013 15
18 déc. 2007 à 17:16
Bonjour,

tu pourais juste rechercher la premiere valeur et une fois trouvée tu verifis alors que la seconde ci trouve egalement ci ce n'est pas le cas tu continus. Mais vu que tu declares pas tes variables on ne peu pas savoir ce que tu cherches.
Pas facile de t'aider dans c'est conditions.

le code qui suit peut etre utiliser pour rechercher la position d'un Nom et un Prenom qui ce trouve dans une meme celule.
le format a respecter : Nom Prenom

Sub essai()
    Dim macelule As Range, maligne As Single, lastvalue As Single, Nom As String
    lastvalue = Range("A:A").Find("*", [a1], , , xlByRows, xlPrevious).Row
    For Each macelule In Range([a1], Cells(lastvalue, 1))
    On Error Resume Next
    Nom = Left(macelule.Value, Application.Search(" ", macelule.Value, 1) - 1)
    MsgBox InMaCelule
        If Nom = mavaleur1 Then 'dans ce if tu met un deuxieme if pour verifier la deuxieme valeur (le prenom par exemple). A toi de chercher comment
            maligne = macelule.Row
            MsgBox maligne 
            Exit For
        End If
    Next
End Sub

A+
0
bigfish_le vrai Messages postés 1835 Date d'inscription vendredi 13 mai 2005 Statut Membre Dernière intervention 20 novembre 2013 15
18 déc. 2007 à 17:33
le "MsgBox InMaCelule" ne sert rien.
 
Un detritus du test qu j'ai fait avant de poster

A+
0
Rejoignez-nous