Si tu ne connais les méthodes de deboggage, il faut que tu commences par prendre le temps de les faire fonctionner sur un programme simple.
Regarde dans l’aide de Visual Basic le chapitre “Visual Basic - Rubriques Comment procéder”, en particulier tout ce qui concerne les points d’arrêt et l’utilisation de la fenêtre d’exécution.
Ensuite, tu reviens à ton programme VBA, et tu places un point d’arrêt sur ta première ligne (lig = 18).
Puis tu retournes dans excel et tu lances la macro par le bouton.
Ton programme va commencer à s’exécuter, mais s’arrêter sur le point d’arrêt (attention : la ligne en question n’est pas encore exécutée).
Ensuite, tu avances ligne par ligne ; tu peux voir la valeur des variables soit en les surlignant avec la souris, soit en les affichant dans la fenêtre d’exécution, soit en les déclarant dans la fenêtre Espions.
Dans la fenêtre d’exécution, tu peux aussi générer des lignes de code temporaire (ex : lig=12), ou lancer des interrogations
(ex : ? ActiveSheet.Name).
Normalement, avec cette méthode, tu vas voir tout de suite pourquoi ta boucle ne s’exécute pas.