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

répertoire au-dessus

  • Initiateur de la discussion Initiateur de la discussion C@thy
  • 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@thy

XLDnaute Barbatruc
Bonjour le forum,

une question toute bête sur laquelle je sèche :

comment trouver le nom du répertoire au-dessus?

je sais qu'il y a une histoire de .. mais je n'ai pas l'instruction.

Chemin = ThisDocument.Path & ".." ne marche pas, bien sûr😱

Merci à vous.

C@thy
 
Re : répertoire au-dessus

C@thy, 😉

Pas forcément fier de ce bricolage ... mais on dirait que çà marche ...
Code:
Sub TestParent()
Dim file As String
Dim filename As String
Dim position As Integer
   file = ThisWorkbook.FullName
   filename = ThisWorkbook.Name
   position = InStr(1, file, filename, 1)
   position = position - 2
   file = Left(file, position)
  MsgBox file
End Sub

A +
 
Re : répertoire au-dessus

Salut Cathy, James (que je salue au passage !)
un peu comme James, je ne suis pas convaincu que c'est le code dont je sois le plus fier, mais ça fonctionne aussi !

VB:
Sub test()
Dim Chemin As String, Mon_Dossier As String
Dim i As Integer

Chemin = ThisWorkbook.Path

While Mid(Chemin, Len(Chemin), 1) <> "\"
    Chemin = Mid(Chemin, 1, Len(Chemin) - 1)
Wend
For i = Len(Chemin) - 1 To 1 Step -1
    If Mid(Chemin, i, 1) = "\" Then
        Mon_Dossier = Mid(Chemin, i + 1, Len(Chemin) - i - 1)
        Exit For
    End If
Next i

Msgbox Mon_Dossier
End Sub

Cordialement,

Étienne
 
Re : répertoire au-dessus

Ah oui, ça marche, mais ce dont j'ai besoin c'est juste le nom du répertoire au-dessus, pas le chemin complet, c'aurait été trop simple😀😉!

En tout cas merci, tu m'as au moins éclairé sur un point : un simple .. ne suffit pas, c'est donc plus compliqué que je ne l'imaginais..

Merci pour tes efforts Etienne, TON CODE EST EXACTEMENT CE QU'IL ME FAUT!!!🙂🙂🙂🙂🙂

Si si vous pouvez être fiers tous les deux!!!

Biz

C@thy
 
Dernière édition:
Re : répertoire au-dessus

Bonjour C@thy, Etienne2323, James007

Je me suis penché sur le problème et avec une fonction récursive, tu obtiens le résultat souhaité :
VB:
Function nFich(tText As String)
If InStr(Right$(tText, Len(tText) - InStr(tText, "\")), "\") <> 0 Then
    tText = Right$(tText, Len(tText) - InStr(tText, "\"))
       a = nFich(tText)
    nFich = Left$(tText, InStr(tText, "\") - 1)
Else
    nFich = "Le fichier " & tText & " est déjà à la racine !"
End If
End Function

Sub go()
MsgBox "Nom du dossier parent : " & nFich("C:\REPERTOIRE1\REP2\HELLO\IMAGES\PORNO\VIOLENT\OURSON\Bébé.gif") ' A Adapter ^^
End Sub
 
Re : répertoire au-dessus

Merci à toi Softmama, le code devient de plus en plus court...

jusqu'où s'arrêteront-ils?????

Je viens de recevoir un mp (message privé) de : Habitude,

v = Split(ThisWorkbook.Path, "\")
MsgBox IIf(UBound(v) > 0, v(UBound(v) - 1), v(UBound(v)))


Je trouve ce code carrément génial, c'est pourquoi je voulais vous en faire profiter!!!

Au moins maintenant quand on fera une recherche sur le forum on trouvera ce fil... très utile.

Bises à toutes et tous

C@thy
 
Dernière édition:
- 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

Discussions similaires

  • Question Question
Microsoft 365 Personal.xlsb
Réponses
4
Affichages
756
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…