Vba sous excell

Fermé
christian - 23 nov. 2008 à 17:46
eriiic Messages postés 24569 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 28 décembre 2023 - 23 nov. 2008 à 19:00
Bonjour,
J'ai automatise beaucoup de travail dans des tableaux excel par des macros en VBA.
je prépare mon tableau pour l'exercice comptable suivant en renommant mon classeur 2008 en 2009, mais mes macros font toujours référence a mon ancien classeur
comment faire pour resoudre ce pbm

merci d'avance

2 réponses

Bonjour,

Sur le principe, c'est pas compliqué !
Dans ton code Vba tu dois remplacer chaque référence à ton ancien classeur par ActiveWorkbook.Name

Ainsi ton code fera référence au classeur actif. Par contre si plusieurs classeurs sont ouverts au moment de l'exécution, ton programme doit être capable de sélectionner le bon classeur. Sinon, tu décides que ton classeur doit être utilisé seul !!!

Bonne soirée,

Sylvlau.
0
eriiic Messages postés 24569 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 28 décembre 2023 7 209
23 nov. 2008 à 19:00
Bonjour,

ou bien tu définis tout au début du code les classeurs sur lesquels tu vas travailler par :
Dim wb1 As Workbook
Set wb1 = Workbooks("2008.xls")

et dans le code tu remplaces toutes les références au classeur Workbooks("2008.xls") par wb1 avec 'édition / remplacer / projet en cours'.

Les autres années tu n'auras qu'une variable à changer : wb1

eric
0