dernLigne = ActiveSheet.UsedRange.Row + ActiveSheet.UsedRange.Count - 1
Complètement faux, ActiveSheet.UsedRange.Row renvoie la première ligne utilisée, mais ActiveSheet.UsedRange.Count renvoie le nombre de cellules dans le carré délimité par les cellules extrêmes.
je voudrais comprendre le "+ " et le ".count -1"
La première ligne de la zone est commune, donc quand tu additionnes, il faut ôter 1.
Autre chose : For I = dernLigne To 1 Step -1
à quoi sert le "To 1" c'est pour le faire aller jusqu'à 1 en remontant ? Pourtant je n'ai aucune variable égale à 1.
En général, tu pars de la dernière ligne jusqu'à la première, mais si tu veux arrêter le traitement avant, tu peux par exemple arrêter en ligne 3 et aller de 2 lignes en 2 lignes : For I = 3 to derLigne Step -2
Avez-vous un livre à me conseiller, un site pour les nuls ou encore est-ce que l'aide sous Microsoft VB Editor suffit ?
Comme l'a dit Kjin, tu trouveras déjà pas mal de choses sur XLD.
Certains XLDnautes ont leur propre site avec des tutos, comme celui de JB par exemple.
Enfin, si tu préfères le support papier (ce qui est mon cas), Les Nuls sont pas mal, ainsi que MicroApp.
En ce qui concerne l'aide, elle est indispensable pour des points précis, mais pas vraiment adaptée à l'apprentissage.