Bonjour tout le monde,
Dans le cadre d'un gros chantier, je dispose d'un classeur qui fait office de base de données.
Pour effectuer mes calculs, j'ai besoin de déterminer le numéro de chaque colonne en me basant sur un code indicateur.
Pour cela, j'avais décidé de passer par un module de classe (que je maîtrise encore très mal) dont voici un exemple :
Cela fonctionne très bien sauf que je me suis rendu compte que la valeur de ces propriétés est recalculée à chaque fois que j'y fais appel dans une macro. Cela ralenti donc considérablement l'exécution de mon code.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 'Module de classe "cDATA_PERSONNEL" Property Get LOGIN() As Long LOGIN = ThisWorkbook.Sheets("DATA_PERSONNEL").Rows(Const_General_Lig_CodeIndic).Find("LOGIN", LookAt:=xlWhole).Column End Property Property Get NOM() As Long NOM = ThisWorkbook.Sheets("DATA_PERSONNEL").Rows(Const_General_Lig_CodeIndic).Find("NOM", LookAt:=xlWhole).Column End Property ...
Existerait - il une solution ?
Je vous remercie par avance de votre aide.
Edit : J'ai bien évidemment pensé à passer par des constantes mais cette base de données est appelée à évoluer (ajout / suppression de colonnes) et vu que j'ai une quinzaines d'onglets comportant des dizaines de colonnes, ça sera très rapidement le foutoir dans les déclarations.
Partager