Bonsoir,
Pour rechercher des informations et les faire passer d'une feuille à l'autre j'utilise le code suivant :
Set ws4 = Worksheets("VNEI (Bilan)")
Set ws3 = Worksheets("VNEI (Impacts)")
lrws4 = ws4.Cells(Rows.Count, 1).End(xlUp).Row
lrws3 = ws3.Cells(Rows.Count, 1).End(xlUp).Row
maximpct = [keepmaximpct]
Set plg1 = ws3.Range("A1:A" & lrws3 + maximpct)
With ws4
For r = 2 To lrws4
Set res = plg1.Find(.Cells(r, 1), LookAt:=xlWhole)
If Not res Is Nothing Then
.Cells(r, 5) = res.Offset(, 1)
Else
.Cells(r, 5) = "-"
End If
Next
End With
End Sub
Ce code fonctionne bien si les informations contenues dans la cellule cible sont parfaitement identiques à celles contenues dans la cellule de recherche.
Mais si ce n'est pas le cas, est-il possible de trouver tout de même le résultat ?
Avec une formule de type : RECHERCHEV ça fonctionne ; donc peut-être avec VLOOKUP ? Mais cette fonction ne permet pas de faire de recherche "vers la gauche", et je crains que ça ne me pose problème plus tard.
Je joins un document Excel au besoin.
Le sub en question se trouve dans les modules ; il s'appelle : "rechdata"
Merci de votre attention.
Bonne soirée !