Sub Macro1()
Dim cel As Range 'déclare la variable cel (CELlule)
Dim r As Range 'déclare la variable r (Recherche)
Dim col As Integer 'déclare la variable col (COLonne)
Dim dl As Integer 'déclare la variable dl (Dernière Ligne)
dl = Cells(Application.Rows.Count, 2).End(xlUp).Row 'définit la dernière ligne de la colonne B (B=2)
For Each cel In Range("R9:R" & Cells(Application.Rows.Count, 18).End(xlUp).Row) 'boucle sur toutes les cellule éditées cel de la colonne R (en partant de la ligne 9)
Set r = Rows(4).Find(cel.Value, , xlValues, xlWhole) 'définit la recherche r (recherche la valeur de la cellule dans la ligne 4)
If Not r Is Nothing Then col = r.Column 'si il existe au moins une occurrence trouvée
'place la formule dans la cellule de la colonne S
cel.Offset(0, 1).Formula = "=+COVAR(" & Range(Cells(5, col), Cells(dl, col)).Address(0, 0) & "," & Range(Cells(5, col), Cells(dl, col)).Address(0, 0) _
& ")*COUNTA(" & Range(Cells(5, col), Cells(dl, col)).Address(0, 0) & ")"
cel.Offset(0, 1).NumberFormat = "0.00%" 'définit la format de la cellule de la colonne S
Next cel
End Sub