Valeur cellule comme variable chemin accès de donnée externe
farreneit Messages postés 318 Statut Membre -
Bonjour à tous,
Je fais appel à vos talents pour un blocage auquel je suis confronté.
Je possède 2 fichiers, un fichier source contenant des données, et un fichier final qui reprend les données du fichier source.
Mon but est de lier ces deux fichiers en utilisant la valeur d'une cellule comme paramètre variable du chemin d'accès du fichier source.
J'ai créé un rapide exemple avec ces deux fichiers : https://wetransfer.com/downloads/9a14965d26ff84680f503a27445b422120230112091230/de75c8
Lorsque le fichier final est ouvert, une macro se lance permettant d'indiquer l'emplacement du fichier dans une des cellules.
Ainsi, le chemin d'accès vers le fichier source devrait ressembler à ça :
[cellule C4] & "\Fichier source.xlsx"
Pour cela, j'ai suivi les instructions de microsoft : Customize a parameter query - Microsoft Support (partie : Use data from a cell as a parameter value).
Malheureusement, une des étapes bloque, c'est l'étape 5 : In the Connection Properties dialog box, click the Definition tab, and then click Parameters.
Il m'est impossible de cliquer sur parameters (voir la photo suivante).
Je suppose que c'est à cause de l'import que j'ai fait car j'ai utilisé l'outil d'Excel "power query" alors qu'il est indiqué au début : Note: The following procedures do not apply to queries created by using Power Query.
Avez-vous une idée de comment resoudre mon problème ?
Merci d'avance et bonne journée !
- Valeur cellule comme variable chemin accès de donnée externe
- Chkdsk disque dur externe - Guide
- Acces rapide - Guide
- Accès refusé - Guide
- Excel cellule couleur si condition texte - Guide
- Vba récupérer valeur cellule ✓ - Forum VB / VBA
2 réponses
J'ai trouvé une solution à mon problème ! Voilà la marche à suivre :
Dans un premier temps il faut choisir la cellule ou sera indiqué le chemin vers le fichier source. Il va falloir nommer cette cellule avec le name manager. Pour ma part j'ai nommé la cellule "path".
Ensuite, il faut effectuer la liaison avec le document source en utilisant l'emplacement actuel du document.
Sur le document final, cliquer sur les données externes > onglet query > Edit > Advanced editor
La deuxième ligne devrait indiquer un code commencant par "Source =".
Il faudra ainsi la remplacer par :
Source = Excel.Workbook(File.Contents(Excel.CurrentWorkbook(){[Name="path"]}[Content]{0}[Column1]), null, true),
Si la cellule avait été nommée différemment, il faut indiquer le bon nom à la place de "path".
Bon courage :)