Recherche multi-critères

Fermé
Manshiz Messages postés 184 Date d'inscription samedi 21 janvier 2006 Statut Membre Dernière intervention 18 août 2012 - Modifié par Manshiz le 18/08/2012 à 17:11
Bonjour,

voilà, j'essaie de créer sur excel, un programme de recherche d'adresses et n° de téléphone du style Local.ch. Le code que voici, recherche toutes les personnes avec par ex. le nom du Dupond.

Private Sub Worksheet_SelectionChange(ByVal Target As Range) 
Dim c As Range, cel As Range, lig&, x% 

If Not Intersect(Target, [E5]) Is Nothing Then Exit Sub 
If Intersect(Target, [E5]) Is Nothing Then: [H5].Select 
If [E5] = "" Then: [H5] = "": [C7:D200].ClearContents 

If [H5] <> "" Then 
lig = Sheets(2).UsedRange.Rows.Count 
  If lig < 2 Then: Exit Sub: [E5].Select 

With Sheets(2).Range("a2:a" & lig) 
     Set cel = .Find([E5]) 
     If Not cel Is Nothing Then 
         firstAddress = cel.Address 
         Do 
    cel.Value = [E5].Value 
             Set cel = .FindNext(cel) 
  
 With ActiveSheet 
 For Each c In Sheets(2).Range("A2:G17") 
.Cells(9, 4) = Sheets(2).Range("A" & cel.Row).Value & " " & Sheets(2).Range("B" & cel.Row).Value 
.Cells(10, 4) = Sheets(2).Range("C" & cel.Row).Value 
.Cells(11, 4) = Sheets(2).Range("D" & cel.Row).Value & " " & Sheets(2).Range("E" & cel.Row).Value 
.Cells(13, 4) = Sheets(2).Range("F" & cel.Row).Value 
.Cells(13, 3) = Sheets(2).Range("G" & cel.Row).Value 

.Cells(15, 4) = Sheets(2).Range("A" & cel.Row - 1).Value & " " & Sheets(2).Range("B" & cel.Row - 1).Value 
.Cells(16, 4) = Sheets(2).Range("C" & cel.Row - 1).Value 
.Cells(17, 4) = Sheets(2).Range("D" & cel.Row - 1).Value & " " & Sheets(2).Range("E" & cel.Row - 1).Value 
.Cells(19, 4) = Sheets(2).Range("F" & cel.Row - 1).Value 
.Cells(19, 3) = Sheets(2).Range("G" & cel.Row - 1).Value 
  Next c 
End With 

Loop While Not cel Is Nothing And cel.Address = firstAddress 
Else 
[D7].Value = "Désolé, aucun résultat trouvé." 
Exit Sub 
     End If 
 End With 
End If 
End Sub 


J'aimerais y inclure la recherche par nom complet et par ville. Ici la cellule E5 correspond recherche Nom et H5 à Ville.

De plus, il y a un problème avec With Feuil1. Si j'inscrit: .Cells(x, 4) avec For x = 9 to 1000 Step 6, le code me donne en résultat qu'un numéro de téléphone.


Merci d'avance pour votre aide.




Sage est celui qui veut apprendre.