Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Ouvrir un fichier excel à partir d'un autre fichie

  • Initiateur de la discussion Initiateur de la discussion Cybher
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

C

Cybher

Guest
Bonjour à tous,

voila je bute depuis ce matin sur des erreurs de syntaxe, et y'a pas moyen que je m'en souvienne.

Je cherche à ouvrir à partir d'un fichier excel maître d'autres fichiers situés dans des sous-répertoires de ce fichier.

Exemple :

C:\\temp\\menu principal.xls -> Fichier maître
C:\\temp\\esclave\\fichier à ouvrir.xls -> Fichier à ouvrir

Dans la fonction Open je ne veux pas lui indiquer un chemin fixe, car le package de fichiers peut-être changé de place à loisir.
Donc je me bat depuis ce matin avec les fonctions Chdir, et curdir de manière à pouvoir ouvrir ces fichiers et à chaque fois il ne veux pas.

Si quelqu'un pouvait m'indiquer la marche à suivre, je l'en remercie grandement d'avance.

Encore Merci

Cybher
 
Bonjour cybher

l'instruction thisworkbook.path te donnera le chemin du classeur contenant la macro exécutée, ce qui donne pour ton fichier à ouvrir

thisworkbook.path & '\\esclave\\fichier à ouvrir.xls'

Cordialement, A+
 
Bonjour cybher, Yeahou,

Ci-joint un exemple.
Le traitement sert uniquement à ouvrir par défaut un fichier sur le disque. Si ce fichier n'est pas présent, la boite de dialogue 'Fchier/Ouvrir' est ouverte.
Puis, après l'ouverture du fichier, un enregistrement automatique est proposé.


Dis nous si cela te convient.

Abel.

Edition :
Et personne rigole, SVP .... [file name=OuvertureEnregistrement.zip size=42639]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/OuvertureEnregistrement.zip[/file]

Message édité par: Abel, à: 31/03/2005 10:44
 

Pièces jointes

Merci à Vous,

mais en fait la commande Thisworkbook.path, me renvoie que le fichier est inexistant :

Ma Commande est :

Workbooks.OpenText Filename:= Thisworkbook.path & '\\Temp\\fichieràouvrir.XLS'

avec comme hypothèse un fichier à la racine, et le dossier temp, un dossier de la racine, et il me met que le fichier est introuvable et pourtant il existe.

Merci d'avance
 
Re,

Euh ....
Je me rend compte que ce que je viens de faire n'est pas forcément évident.

Cybher, je viens d'éditer mon message précédent pour ajouter la pièce jointe qui manquait.
Arf !

Abel.
 
Merci beaucoup Abel,

mais çà n'est pas tout à fait çà qu'il me faudrait.

En fait les 2 fichiers je veux les mettre n'importe où, sur le bureau, dans un répertoire quelconque...

Exemple :

C:\\procédure\\procédure.xls (Maître)
C:\\procédure\\fichiers\\fichiersàouvrir.xls (Esclave)

Et le répertoire procédure peut être modifier par n'importe quel autre, et moi je ne veux pas changer le répertoire de recherche à chaque fois.

Comment Faire

Encore Merci

Cybher
 
Re,

L'exemple suivant te permet d'aller ouvrir un fichier à partir du répertoire courant. C'est à dire à partir du répertoire utilisé pour stocker le fichier contenant la macro.

Ce chemin peut être modifié à loisir dans le code ou en allant récupérer une information dans une cellule, par exemple.


Abel. [file name=ExempleCybher.zip size=32966]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/ExempleCybher.zip[/file]
 

Pièces jointes

Merci Abel,

c'est bon, j'ai trouvé ce que je cherchais dans ton code.
En fait je l'avais déjà fait mais je pense que j'avais fait une faute de frappe dans le fichier à chercher... Etrange...

Encore Merci Beaucoup !!!!

Cybher
 
Re bonjour Abel, Cybher, le forum

En précision:
il vaut mieux utiliser thisworkbook.path qu'activeworkbook.path.
Thisworkbook renvoie au classeur contenant la macro exécutée alors qu'activeworkbook renvoie au classeur actif.
La nuance est de taille.
Pour que cette instruction renvoie une valeur, il faut bien sur que le classeur ait été enregistré.

msgbox thisworkbook.path
te montrera la syntaxe renvoyée, tu verras alors qu'il n'y a pas d'antislashe en fin (la, j'ai un gros doute sur l'orthographe :S ) et qu'il faut donc l'ajouter pour enrichir le chemin

Cordialement, A+
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…