bonjour à tous.
J'ai besoin de votre aide pour un problème qui me parait tellement simple et idiot mais je bloque depuis quelques minutes déjà...
J'ai lu l'aide concernant les portées de variables.
Dans mon, projet, j'ai besoin de connaitre le nom d'un workbook pourqu'une macro fonctionne correctement.
Afin que le nom soit correct (et pas perturbé par l'exécution d'une autre macro entre temps), j'avais pensé au système suivant
Dans la macro concernée qui est contenue dans la feuille 1 en mode WorkSheet_Change, j'ai mis la commande suivante:
et dans le workbook_Open qui contient cette macro, j'ai mis:
Code : Sélectionner tout - Visualiser dans une fenêtre à part Application.Workbooks(workbook_name).Activate
Je me dis que ça devrait fonctionner puisqu'à l'ouverture, j'aurai le nom exact du fichier. Si je fais ça c'est parceque le nom du fichier changera peut être dans l'avenir et c'est pour permettre de faire évoluler le nom du fichier sans avoir à rentrer dans le code pour changer le nom.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Public workbook_name As String Private Sub Workbook_Open() workbook_name = Application.ActiveWorkbook.Name End Sub
Cependant, cela ne fonctione pas et il me dit que l'indice n'est pas correct. En effet, le mode debug m'insique que le workbook_name est vide. Pourtant avec la déclaration en Public il me semble que cela devrait fonctionner
Merci d'avance pour votre aide
Partager