Bonjour, Salut à tous !
CJoint a pris la déplorable manie de transformer les extensions xlsm et xlsx, d'où il faut enregistrer et modifier l'extension avant d'ouvrir...
Ceci dit, ton fichier de 56,9 ko pouvait être déposé directement sur le Forum, qui accepte les fichiers jusqu'à 1Mo. Ce qui aurait simplifié la chose pour tout le monde.
Je vais revoir ta procédure SelectionChange, qui me paraît bien longue... Mais déjà la première ligne que j'ai aperçu m'interroge :
If Test = 1 Then Exit Sub
Test étant une variable non déclarée, non initialisée, sera toujours égale à 0....
A quoi donc est destinée cette variable ?
2e remarque : aucun Module standard dans ton fichier, et tu flanques des procédures un peu n'importe où.
Un peu d'ordre ne nuit pas, et il est toujours préférables de réserver les modules dédiés aux feuilles et au classeur, préexistants, aux procédures évènementielles concernant l'objet auquel il sont dédiés, et placer les autres procédures dans un Module standard, module public (si tu ne le rends pas privé), où elles trouvent normalement place.
NB- Et indenter le code n'est pas un luxe superflu pour celui qui intervient...