Comment puis-je réécrire mon code VBA Excel pour éviter d’utiliser .Select et .Activate ?
Au lieu de sélectionner puis agir, référencez directement les objets :
Mauvais :
Sheets("Feuille1").Select
Range("A1").Select
Selection.Value = "Bonjour"
Bon :
Sheets("Feuille1").Range("A1").Value = "Bonjour"
Principes :
- Utilisez des variables pour stocker les références aux classeurs, feuilles et plages
- Qualifiez toujours vos références (spécifiez la feuille)
- Utilisez
With...End Withpour les opérations multiples sur le même objet - Éviter Select améliore les performances et rend le code plus robuste