Bonjour,
Un fragment de code aussi limité ne permet pas de détecter ce qui provoque une durée d'exécution excessive. Et le code en entier ne le permet pas toujours non plus sans le fichier dans lequel il s'exécute.
Quoi qu'il en soit, le problème n° 1 de ce bout de code réside dans : Selection. Toute démarche d'optimisation consiste en effet à bannir toute utilisation de Select, Activate, Selection et autres éléments équivalents, car ces instructions génèrent des opérations supplémentaires parasites qui prennent inutilement du temps.
Cependant, pour atteindre les temps que tu indiques, les opérations parasites doivent être incommensurables !
Si tu veux que l'on se penche sur ton problème, tu vois ce qu'il te reste à faire...