Find - première cellule de la ligne
Bonsoir,
Après 3 heures à chercher sans succès je donne ma langue au chat...
J'ai une feuille "pas touche", dans la colonne A des noms et dans la colonne G je cherche à insérer le résultat d'une recherche .
Cette recherche se fait sur la feuille "récap", une fois la donnée trouvée le résultat doit être le contenu de la colonne A de cette même ligne.
Voici ce que j'ai écrit :
With Worksheets("recap").Cells
nomcherche = Sheets("pas touche").Range("A2")
Set Client = .Find(nomcherche, LookIn:=xlValues)
If Not Client Is Nothing Then Worksheets("pas touche").Range("G2") = Cells(Client.Row, 1)
End WithMais ça ne fonctionne pas, le résultat n'est pas le bon. C'est mon Cells(Client.Row, 1) qui n'est pas juste mais je ne parviens pas à trouver la bonne syntaxe.
Pouvez vous m'aider ?
Ensuite je devrai effectuer cette recherche pour tous les noms de ma colonne A, donc étendre cette "formule" sur toute ma colonne A, et ça je ne sais pas comment m'y prendre....
Un grand merci pour votre aide précieuse et bon week-end.
Bonjour,
Essayez ceci:
Sub Recup_Donnees()
'Déclaration des variables
Dim f1 As Worksheet, f2 As Worksheet
Dim DerLig_f2 As Long, i As Long
Dim Client As Range
Dim NomCherche As String
Set f1 = Sheets("recap") 'attribution de la variable f1 à la feuille "recap"
Set f2 = Sheets("pas touche") 'attribution de la variable f2 à la feuille "pas touche"
DerLig_f2 = f2.Range("A" & Rows.Count).End(xlUp).Row 'dernère ligne de la colonne A de f2
For i = 2 To DerLig_f2 'De la ligne 2 jusqu'à la dernière de f2
With f1.Cells
NomCherche = f2.Cells(i, "A")
Set Client = .Find(NomCherche, Lookat:=xlWhole) 'valeur exacte recherchée
If Not Client Is Nothing Then f2.Cells(i, "G") = f1.Cells(Client.Row, 1)
End With
Next i
'Libération de la mémoire
Set Client = Nothing
Set f1 = Nothing
Set f2 = Nothing
End SubDans votre essai, il manquait de préciser le nom "Sheets("recap")"
If Not Client Is Nothing Then Worksheets("pas touche").Range("G2") = Sheets("recap").Cells(Client.Row, 1)
Cdlt
TOP !
Merci beaucoup Arturo83