Bonsoir Hellboy, lebardo,bonsoir forum,
Lebardo,
Pour identifier les variables, il faut les nommer.
Tu peux remplacer i par bzz si tu veux, et sico par brr
For i = 2 To Range('B9').End(xlDown).Row est une boucle qui cherche dans Sheets('Sociétés') à partir de la ligne 2, jusqu’à la dernière ligne End(xlDown)
Le code cherche la valeur de chaque ligne dans la colonne B, soit Rech = Cells(i, 2).Value (cells(ligne,colonne)
Dans la feuille skandia, le code cherche dans chaque ligne la valeur qu’elle affecte à sico (« brr » si tu veux)
sico = .Find(What:=Rech).Value
et ensuite vérifie la correspondance de cette valeur affectée avec la ligne dans Sheets('Sociétés')
copie le résultat
Cells(i, 5).Value = sico dans la colonne E (cells(ligne,colonne)
Et indique 0 si aucune correspondance est trouvée
&&&&&&&&&&&&&&&&&&&
Le code Helloboy donne la même solution, avec un détail, tout de même, il faut supprimer le ';' après Else, si tu veux que ça marche
Else
; ' Si Trouve pas , vide la case de la ligne correspondante dans
&&&&&&&&&&&&&&&&&&&&
les explications de Helloboy sont de même nature
'Boucle pour vérifier chaque élément de la feuille société
For i = 9 To .Range('B9').End(xlDown).Row
La variable i va parcourir la ligne 9 jusqu’à la dernière ligne
En cherchant dans la colonne B : .Find(What:=.Cells(i, 2))
Et en écrivant présent si la correspondance est trouvée.Cells(i, 22) = 'Présent'
Ou rien, s’il n’y a pas correspondance : .Cells(i, 22) = Empty
Voilà, petit à petit le code devient compréhensible
(du moins, je l'espère)
albert