Lien entre deux fichiers xls sans racine

K

kreex

Guest
Bonjour le forum,

J'ai une petite question, sans doute élémentaire. Je dispose de plusieurs fichiers excel dans mon ordinateurs. Ces fichiers sont liés entre eux par des macros classiques de type :

Workbooks.Open Filename:='C:\\Documents and Settings\\application\\Monfichier1.xls'

Est-il possible de simplifier l'adresse de façon à ce qu'il ne soit pas nécessaire de spécifier les adresses depuis la racine, mais seulement depuis le nom du dossier? Cela me permettrai de déplacer et faire tourner mon appli sans avoir à la paramétrer à chaque fois ?
Merci d'avance pour le coup de pouce...
Bonne journée à tous
 

Jacques87

XLDnaute Accro
Bonjour

Si tous tes fichiers sont dans le même dossier pourquoi ne pas paramétrer une fois pour toutes ton chemin

chemin = 'C:\\Documents and Settings\\application\\'
et ensuite pour appeler tes fichiers

Workbooks.Open FileName = chemin & 'monfichier.Xls'

et encore mieux, si ton nom de fichier est également paramétrer

chemin = chemin & fichier
WorkBooks.Open FileName : = chemin

ai-je répondu à ta question ?
 
K

kreex

Guest
Bonjour Jacques87

Déjà, mille excuses, mais le lien était :
Workbooks.Open Filename:='C:\\Documents and Settings\\application\\Monfichier1.xls'
Mon copier/coller n'est pas passé en entier.

Je précise :
En gros, je souhaiterai pouvoir donner mon application à d'autres utilisateurs sans avoir à paramétrer chaque ordinateur. Il faudrait donc que l'adresse commence depuis le nom du dossier, et non pas depuis la racine. Car je ne sais pas dans quel répertoire les autres utilisateurs vont placer ce dossier.

Début de semaine, et je sens déjà que j'ai du mal à être clair...la semaine risque d'être longue ;)

Merci de l'attention.
 

Jacques87

XLDnaute Accro
aarf !!
je me sens mal à l'aise pour pouvoir t'aider, en effet comment pourras tu savoir à l'avance où les utilisateurs rangeront ton fichier et de ce fait deviner quel sera le chemin à utiliser pour accéder à ton fichier
Une solution serait d'imposer un chemin très précis à tes utilisateurs

A+
 

coco_lapin

XLDnaute Impliqué
Bonjour Jacques87, kreex et le forum.

Pour ouvrir le classeur, à mon sens, tu es obligé de connaître son chemin.

Il faut donc retrouver le chemin du classeur qui se trouve sur le PC d'un utilisateur.

Si le classeur porte le même nom tu peux retrouver ce classeur et en déduire le chemin.
pour cela il faut que le classeur soit en lecture seule sinon il y a possibilité de changer le nom du classeur et donc tu ne trouveras rien.

Une autre solution, si le classeur a été changé de nom, c'est de faire la recherche sur un classeur quelconque que tu mets en lecture seule et tu demandes aux utilisateurs de le mettre dans le même répertoire que celui qu'ils vont utiliser.

Une dernière solution est de mettre dans ton classeur un onglet masqué dans lequel tu inscris quelquechose en cellule A1 par exemple. La recherche consiste alors à balayer tous les classeurs du disque dur et de détecter la cellule A1 de l'onglet en question. Mais je doute sur la rapidité de cette dernière solution.

Avant de développer un cas, que choisis-tu et il faut voir si quelqu'un n'aura pas déjà quelquechose de tout prêt.
 

ChTi160

XLDnaute Barbatruc
Salut reex
bonjour le Fil

a condition que les gens place ton fichier dans le même dossier que le fichier à ouvrir
il y a aussi
Chemin= ThisWorkBook.path &'/\\'& nomfichier & '.xls'

WorkBooks.Open FileName : = chemin

bonne Journée
 
K

kreex

Guest
Merci Jacques87, Coco_lapin, chTi160, le forum

La solution proposée par chTi160 va, c'est sur, résoudre mon problème. Parce qu'en effet, le dossier ne change pas de nom. J'envoie tout le dossier à d'autres utilisateurs qui le mettront où ils le souhaitent. Mais le dossier ne changera pas de nom.

Merci à tous.
 

Discussions similaires

Statistiques des forums

Discussions
312 321
Messages
2 087 266
Membres
103 502
dernier inscrit
talebafia