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

Comment remonter dans un répertoire ?

  • Initiateur de la discussion Initiateur de la discussion Pierre31
  • 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 !

P

Pierre31

Guest
Bonjour à toutes et tous,

J'ai plusieurs fichiers dont je transfère automatiquement par macro VBA des données de l'un à l'autre.
Le chemin de Fichier1 est "E:\DPR\MGR\GMAO\Stat\Fichier1"
Le chemin de Fichier2 est "E:\DPR\MGR\GMAO\Planning\Recap\Fichier2"
J'ai mis dans les macros VBA les 2 chemins pour récupérer les données.
Ceci est un exemple pour comprendre mon problème car en réalité j'ai des dizaines de fichiers qui fonctionnent sur le même principe.
Aujourd'hui, pour des raisons d'organisation je dois mettre l'ensemble de mes fichiers dans
"D:\PROD\MCO\LOM\GMAO\Stat\Fichier1" et
"D:\PROD\MCO\LOM\GMAO\Planning\Recap\Fichier2"

Je dois reprendre l'ensemble des macros pour saisir les nouveaux chemins mais cette opération pourrait bien se représenter en cas de nouvelle organisation, donc voici ma question:

Comment je peux écrire les chemins de façon a ne plus devoir les changer sachant que

GMAO\Stat\Fichier1 Restera invariable et
GMAO\Planning\Recap\Fichier2 Restera invariable

En fait toute mon application est dans le sous répertoire "GMAO"

Si il y a une solution cela me permettra de fonctionner quel que soit le les répertoires et sous répertoires en amont.

Merci d'avance pour vos réponses.
Cordialement
Pierre
 
Re : Comment remonter dans un répertoire ?

Bonjour Pierre31 🙂,
Pas totalement claire ton histoire 🙄...
Teste
Code:
Sub test()
Dim Chemin As String, Tableau, I As Integer
Tableau = Split("E:\DPR\MGR\GMAO\Stat\Fichier1", "\")
For I = LBound(Tableau) To UBound(Tableau) - 2
Chemin = Chemin & Tableau(I) & "\"
Next I
MsgBox Chemin
End Sub
sachant que tu peux obtenir le chemin du fichier avec
Code:
ThisWorkbook.Path
j'espère que ça répondra à ta question 🙄.
Bonne journée 😎
 
Bonjour JNP,

D'abord merci pour ta suggestion et excuse moi de répondre tardivement.
En fait j'ai une application composée de plusieurs répertoires et sous-répertoires dans lesquels il y a X fichiers Excel et des ".txt" .
Dans la pratique je copie des données de feuilles Excel dans des fichiers textes et vice versa en passant par des macros dans lesquelles je donne le chemin pour copier ou écrire les données.
Actuellement mont application est contenue dans le répertoire "TestRep1" et sous le sous-répertoire "LOM"
Ce répertoire est sur un serveur avec l'arborescence suivante
E:\DPR\MGR\LOM\
Par la suite je vais devoir mettre mon application "TestRep1" dans:
E:\PROD\APPLI\
Il est évident que dans mes macro je vais devoir modifier les chemins pour pouvoir copier ou coller des données dans mes fichiers texte.
Donc l'idée est de trouver la solution qui permette quel que soit l'endroit ( Répertoire - Sous-répertoire) que mon application "TestRep1" fonctionne sans modifier les chemins dans mes macros.

J'ai donc pensé à la macro "pas très jolie" suivante (exemple) qui me permet de fonctionner quel que soit le répertoire ou le sous-répertoire dans lequel je met mon application.

Sub Recherche-chemin
Dim Chemin, chemin2 As String, Tableau, I, Delta As Integer
Chemin = ThisWorkbook.Path
chemin2 = "\TestRep1" ' Chemin ou se trouve le fichier dans l'application
Lchemin = Len(Chemin)
Lchemin2 = Len(chemin2)
Delta = Lchemin - Lchemin2
MasterChemin = Mid(Chemin, 1, Delta) 'Chemin dans lequel se trouve l'application
NewChemin = MasterChemin & " \TestRep1" & "\" & "TestRep1-333" & "\" & "TestRep-1-333-444" & "\" ' Chemin ou l'on va chercher de nouvelles informations

MsgBox ("Chemin de l'application = ") & MasterChemin

MsgBox ("Chemin des nouvelles données = ") & NewChemin
End Sub

Je l'ai essayée et elle fonctionne dans tous les cas.

Cordialement
Pierre
 
- 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

H
Réponses
5
Affichages
13 K
H
G
Réponses
7
Affichages
8 K
Gasp73
G
S
Réponses
2
Affichages
1 K
Svhmanta
S
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…