[vba] code pour ourir un fichier excel

Résolu
Bonjour,

J'ai construit une macro qui fait appel à 6 fichiers différents dans un même répertoire.
La macro est supportée par un septième fichier "macros.xls" dans le même répertoire.

Toutes les macros fonctionnent.

Mon seul soucis est le suivant :
Mes 6 fichiers sont évolutifs et je les récupère périodiquement.
Je les dépose dans un nouveau répertoire et y colle également le fichier macros.xls

Lorsque je joue la macro, impossible d'ouvrir les fichiers (qui sont évidemment nommés correctement..)

Voilà mon code pour l'ouverture des fichiers :

chemin = ActiveWorkbook.Path
nom_fichier = chemin & "/tableau1.xls"
Workbooks.Open Filename:=nom_fichier


Le message d'erreur est que le fichier "tableau1.xls est introuvable.

Quelqu'un peut m'aider ?

2 réponses

  1. Bonjour,

    Essaie ce code :

    chemin = ThisWorkbook.Path
    nom_fichier = chemin & "\tableau1.xls"
    Workbooks.Open Filename:=nom_fichier

    Il vaut mieux ThisWorkbook plutôt que ActiveWorkbook et "\... plutôt que "/...

    Patrice
    1
    1. Merci à toi. J'avais repéré le "\... à la place du "/... (quel truc stupide...) et ça marche ainsi.

      Je vais corriger le reste. En quoi "ThisWorkbook" est mieux que "ActiveWorkbook" ?
      0
      1. Pour répondre à ta dernière question :

        ThisWorbook représente toujours le classeur contenant la macro en train de s'exécuter, qu'il soit actif ou non, donc le répertoire sera toujours le même.

        ActiveWorkbook représente le classeur actif, il ne s"agit pas forcement du classeur qui contient la macro. Lorsque plusieurs fichiers situés dans des répertoire différents sont ouverts simultanément on pourrait, par erreur, se référer au mauvais fichier. Par exemple, pendant la phase de débogage, lors d'un arrêt (Stop, Esc. ou Point arrêt), on pourrait activer un autre des fichiers par inadvertance, le répertoire ne serait plus le bon.

        .L'utilisation de ThisWorbook évite toute ambiguïté.

        Au plaisir de te retrouver sur le Forum
        Patrice
        0

    Discussions similaires

    question pix mot caché

    7 réponses