Pour les Lignes en feuille 2 allant de 5 a la derniere
For LigneF2 = 5 To DerLigneF2
DerLigneF2 prenant les valeurs de la premiere colonne grace au 1
DerLigneF2 = Feuil2.Cells(Rows.Count, 1).End(xlUp).Row
Ton fichier :
Si la liste déroulante correspond a 126, LigneF2 va passer de 5 a 6 (grace a "next LigneF2") sans rien faire mais a la ligne 7 il va trouver la valeur 126
If Feuil1.Cells(2, 1).Value = Feuil2.Cells(LigneF2, 1).Value Then
Donc au moment ou LigneF2 passera a 7, tu auras la fonction si qui sera "vrai" et donc un repport de valeur entre ta feuille 22 et la feuille 1
Feuil1.Cells(5, 2).Value = Feuil2.Cells(LigneF2, 3).Value
Feuil1.Cells(7, 3).Value = Feuil2.Cells(LigneF2, 5).Value
Feuil1.Cells(9, 4).Value = Feuil2.Cells(LigneF2, 7).Value
Feuil1.Cells(5, 5).Value = Feuil2.Cells(LigneF2, 9).Value
On sait que la ligne utile etait la 7 donc le reste (de 8 a 10),ne va pas servir on fait donc un Exit For.
Pour "Application.EnableEvents = False" c'est juste pour ne pas qu'il recherche inutilement une procedure évenementielle dont on a pas besoin.
A+