Chemin d'accès fichier

Y compris Power BI, Power Query et toute autre question en lien avec Excel
C
Clem7640
Jeune membre
Jeune membre
Messages : 47
Inscrit le : 19 janvier 2019
Version d'Excel : 2013
Version de Calc : 2013

Message par Clem7640 » 19 janvier 2019, 15:31

Bonjour, après quelques recherches concernant les chemins d'accès, je viens vers vous n'ayant pas réussi à trouver la solution à mon problème.

J'ai un début de code me permettant d'aller chercher un fichier (d'ailleurs, est-ce possible d'aller chercher à la fois un dossier et un fichier ?) :
Sub Test()

Dim chemin_fichier As String

chemin_fichier = Application.GetOpenFilename(, , "Sélectionner Fiche")

End Sub
J'aimerais poursuivre le code afin d'obtenir le chemin d'accès vers ce fichier sachant que:
- Mon arborescence ressemble à ceci :
Arborescence.jpg
Arborescence.jpg (18.58 Kio) Vu 156 fois
- Je veux obtenir ce lien : .\PROJET\C\Versions\Fichier 3.txt
(c'est-à-dire que je ne veux pas le lien vers les dossiers qui se trouvent avant les dossier où mon fichier Excel est rangé)

Merci !
Clem
g
gmb
Fanatique d'Excel
Fanatique d'Excel
Messages : 11'996
Appréciations reçues : 256
Inscrit le : 4 avril 2013
Version d'Excel : 2016

Message par gmb » 19 janvier 2019, 16:02

Bonjour

Dans ton exemple, essaie cette instruction (à compléter) pour ouvrir ton fichier :
Set fichier = Workbooks.Open("C:\...\PROJET\A\B\C\Fichier 3.xlsx")
Bye !
C
Clem7640
Jeune membre
Jeune membre
Messages : 47
Inscrit le : 19 janvier 2019
Version d'Excel : 2013
Version de Calc : 2013

Message par Clem7640 » 19 janvier 2019, 16:09

Bonjour, je me suis peut être mal exprimée, je ne veux pas ouvrir mon fichier mais seulement afficher son chemin d'accès.

Sachant que mon dossier ici nommé PROJET peut avoir un autre nom selon le projet.
gmb a écrit :
19 janvier 2019, 16:02
Bonjour

Dans ton exemple, essaie cette instruction (à compléter) pour ouvrir ton fichier :
Set fichier = Workbooks.Open("C:\...\PROJET\A\B\C\Fichier 3.xlsx")
Bye !
Clem
g
gmb
Fanatique d'Excel
Fanatique d'Excel
Messages : 11'996
Appréciations reçues : 256
Inscrit le : 4 avril 2013
Version d'Excel : 2016

Message par gmb » 19 janvier 2019, 16:24

Pour obtenir le chemin d'un fichier :
* ouvrir ce fichier
* dans n'importe quelle cellule, taper la formule :
=CELLULE("nomfichier")
Tu obtiens ainsi l'adresse complète de l'onglet où se trouve cette cellule
* Tu en fais un copier puis un coller - collage special valeur où tu veux
* Tu supprime le nom de l'onglet, à gauche du crocher fermant
* Tu supprimes les deux crochets
Et tu as le chemin du fichier.
OK ?
Bye !
C
Clem7640
Jeune membre
Jeune membre
Messages : 47
Inscrit le : 19 janvier 2019
Version d'Excel : 2013
Version de Calc : 2013

Message par Clem7640 » 19 janvier 2019, 16:32

gmb a écrit :
19 janvier 2019, 16:24
Pour obtenir le chemin d'un fichier :
* ouvrir ce fichier
* dans n'importe quelle cellule, taper la formule :
=CELLULE("nomfichier")
Tu obtiens ainsi l'adresse complète de l'onglet où se trouve cette cellule
* Tu en fais un copier puis un coller - collage special valeur où tu veux
* Tu supprime le nom de l'onglet, à gauche du crocher fermant
* Tu supprimes les deux crochets
Et tu as le chemin du fichier.
OK ?
Bye !
Ce n'est pas ce que je veux, je veux passer par du VBA afin d'avoir une optimisation ultérieurement (aller chercher le chemin d'accès d'un fichier n'est qu'une petite partie de mon code)

J'ai déjà bouton me permettant de lancer le début de macro à savoir aller chercher un fichier et maintenant j'aimerais afficher le chemin d'accès du fichier.

Clem
p
phoenixvl
Jeune membre
Jeune membre
Messages : 22
Inscrit le : 5 novembre 2013
Version d'Excel : 2007

Message par phoenixvl » 19 janvier 2019, 17:02

Bonjour,
Vous pouvez tenter d'utiliser La propriété .FullName et la propriété .PATH
La première retourne le chemin complet du fichier ActiveWorkbook.Name
La propriété .Path retourne uniquement le chemin du dossier.

Good luck ;;)
C
Clem7640
Jeune membre
Jeune membre
Messages : 47
Inscrit le : 19 janvier 2019
Version d'Excel : 2013
Version de Calc : 2013

Message par Clem7640 » 19 janvier 2019, 17:15

phoenixvl a écrit :
19 janvier 2019, 17:02
Bonjour,
Vous pouvez tenter d'utiliser La propriété .FullName et la propriété .PATH
La première retourne le chemin complet du fichier ActiveWorkbook.Name
La propriété .Path retourne uniquement le chemin du dossier.

Good luck ;;)
Bonjour, voici mon essai avec Path :
Sub Test()

Dim nom_fichier As String

nom_fichier = Application.GetOpenFilename(, , "Sélectionner Fiche")

nom_fichier = Application.Path

Range("b2") = nom_fichier


End Sub
J'obtiens C:\PROGRA~2\MICROS~2\Office15 ce qui ne correspond pas au chemin d'accès à mon fichier

Clem
p
phoenixvl
Jeune membre
Jeune membre
Messages : 22
Inscrit le : 5 novembre 2013
Version d'Excel : 2007

Message par phoenixvl » 19 janvier 2019, 17:37

Essayez avec ce code car effectivement si le fichier sélectionné n'est pas ouvert, cela va retourner le chemin d'accès du logiciel excel sur votre pc.
Sub Test()

Dim nom_fichier As String
Dim chemin As String

nom_fichier = Application.GetOpenFilename(, , "Sélectionner Fiche")

Workbooks.Open Filename:=nom_fichier 'ouvre le fichier sélectionné

chemin = ActiveWorkbook.Path

Range("b2") = nom_fichier 'attention que la cellule B2 soit vide sinon le contenu sera écrasé


End Sub
::D
p
phoenixvl
Jeune membre
Jeune membre
Messages : 22
Inscrit le : 5 novembre 2013
Version d'Excel : 2007

Message par phoenixvl » 19 janvier 2019, 17:46

Après quelques recherches sur le net, j'ai trouvé un code qui pourrait vous permettre de récupérer le chemin d'accès d'un fichier sans avoir à l'ouvrir.
Sub Récupérer_CheminAccèsFich()

On Error GoTo 1
Dim finput As FileDialog
Set finput = Application.FileDialog(msoFileDialogFolderPicker)
finput.Show

With finput
Sheets(1).Cells(1, 1) = .SelectedItems(1)
End With
1:

End Sub
J'espère vous avoir aider, bonne continuation
::D
C
Clem7640
Jeune membre
Jeune membre
Messages : 47
Inscrit le : 19 janvier 2019
Version d'Excel : 2013
Version de Calc : 2013

Message par Clem7640 » 19 janvier 2019, 17:49

phoenixvl a écrit :
19 janvier 2019, 17:37
Essayez avec ce code car effectivement si le fichier sélectionné n'est pas ouvert, cela va retourner le chemin d'accès du logiciel excel sur votre pc.
Sub Test()

Dim nom_fichier As String
Dim chemin As String

nom_fichier = Application.GetOpenFilename(, , "Sélectionner Fiche")

Workbooks.Open Filename:=nom_fichier 'ouvre le fichier sélectionné

chemin = ActiveWorkbook.Path

Range("b2") = nom_fichier 'attention que la cellule B2 soit vide sinon le contenu sera écrasé


End Sub
::D
J'aimerai ne pas ouvrir le fichier et que le lien obtenu commence à PROJET comme ceci : \PROJET\B\Fichier 2.txt
Répondre Sujet précédentSujet suivant
  • Sujets similaires
    Réponses
    Vues
    Dernier message