Bonjour Pierre
Navré que vous l'ayez mal pris, à priori nous ne nous sommes pas compris
Relisez moi, je n'ai pas dit que la ligne de code est totalement fausse
Je parlai de votre compréhension de la ligne
Dans cette configuration
For i = 1 To Valeur
la variable porte sur toute la colonne
Et la portée de la variable n'est pas toute la colonne avec, elle ne donne que le numéro de la dernière ligne remplie
Valeur = .Range("k" & Rows.Count).End(xlUp).Row
Si la portée avait été toute la colonne, vous auriez eu
Dim Valeur As Range
Set Valeur = Range("K:K")
J'espère que cette explication vous aidera dans votre compréhension
Et oui, les plus compétents sont là pour aider les novices
Sinon tant pis