Bonjour Tech, bonjour le forum,
Tu dois commencer par utiliser la règle d'or du VBA. Éviter autant que possible tous les Select et autres Activate inutiles. Ils ne font que ralentir le code et sont source de plantages.
En principe, je prends le temps de proposer au demandeur le code corrigé mais vu la longueur du tien... Je ne m'y risquerai pas.
Je pense que si tu veux une réponse rapide il te faut extraire la partie du code qui correspond à ta demande. Encore une fois, avec plus de 1000 lignes tu vas en décourager plus d'un...
Sinon, le code qui permet de connaître la dernière ligne éditée X d'une colonne COL est (à adapter à ton cas) :
Dim X As Integer
X=Cells(Application.Rows.Count, COL).End(xlUp).Row