Excel Downloads
Forum

Précédent   Excel Downloads Forums > Archives > Forum Excel Downloads - Archives


 
 
LinkBack Outils de la discussion
Vieux 09/01/2005, 04h17   #1 (permalink)
Ludovic
Guest
 
Messages: n/a
Par défaut Récupérer le chemin d'acces d'un dossier

Bonjour tout le monde,

Comment récupérer le chemin d'accès à un dossier et pas d'un fichier (pas de getopenfilename).

Mercide votre réponse.

Ludovic
 
ANNONCES
Vieux 09/01/2005, 06h41   #2 (permalink)
f.launay
Guest
 
Messages: n/a
Par défaut Re: Récupérer le chemin d'acces d'un dossier

Bonjour,
Dans une feuille excel =cellule("nomfichier")
dans un module vba Thisworkbook.fullname
 
Vieux 09/01/2005, 08h25   #3 (permalink)
michel
Guest
 
Messages: n/a
Par défaut Re: Récupérer le chemin d'acces d'un dossier

bonjour Ludovic , bonjour F.Launay


tu peux tester cette methode ( BrowseForFolder ) pour choisir un dossier et ensuite afficher le chemin


Sub afficherCheminDosier_BrowseForFolder()
Dim objShell As Object, objFolder As Object
Dim SecuriteSlash As Integer
Dim Chemin As String

Set objShell = CreateObject("Shell.Application") 'recuperer nom repertoire cible
Set objFolder = objShell.BrowseForFolder(&H0&, "Choisir un répertoire", &H1&)
On Error Resume Next

Chemin = objFolder.ParentFolder.ParseName(objFolder.Title). Path
If objFolder.Title = "" Then Chemin = ""
SecuriteSlash = InStr(objFolder.Title, ":")
If SecuriteSlash > 0 Then Chemin = Mid(objFolder.Title, SecuriteSlash - 1, 2) & ""

MsgBox Chemin
End Sub


bonne journée
MichelXld
 
Vieux 09/01/2005, 11h16   #4 (permalink)
Ludovic
Guest
 
Messages: n/a
Par défaut Re: Récupérer le chemin d'acces d'un dossier

Bonjour Michel, Bonjour f.launay, Rebonjour à toutes et à tous,

Merci pour vos réponses mais en fait , je connais le nom de mon dossier (mon_dossier), je veux juste mettre le chemin dans une variable (le_chemin) pour y accéder.

Merci pour votre aide, je débute...

Bon Dimanche.

Ludovic
 
Vieux 09/01/2005, 12h19   #5 (permalink)
michel
Guest
 
Messages: n/a
Par défaut Re: Récupérer le chemin d'acces d'un dossier

rebonjour Ludovic

peux tu placer un exemple sur le forum , car je ne comprends pas tres bien ce que tu souhaites obtenir


bonne journée
MichelXld
 
Vieux 09/01/2005, 13h30   #6 (permalink)
Ludovic
Guest
 
Messages: n/a
Par défaut Re: Récupérer le chemin d'acces d'un dossier

Re ... Michel,

Ce doit etre très simple, mais quand on débute, rien ne l'est.

- J'ai donc un dossier (mon_dossier)
- Je ne sais pas où il se trouve (C:\D1\...\Dx\mon_dossier)
- Je veux juste céer une variable mon_chemin = "C:\D1\...\Dx\mon_dossier"

J'espere avoir été plus explicite.

Merci pour ton interet.

Ludovic
 
Vieux 09/01/2005, 15h07   #7 (permalink)
michel
Guest
 
Messages: n/a
Par défaut Re: Récupérer le chemin d'acces d'un dossier

rebonjour Ludovic

avant d'aller plus loin : que veux tu dire par "Je ne sais pas où il se trouve " ?
tu souhaites balayer tout le disque dur C:\ pour retrouver un dossier nommé "mon_dossier" ?


bonne apres midi
MichelXld
 
Vieux 09/01/2005, 15h24   #8 (permalink)
Ludovic
Guest
 
Messages: n/a
Par défaut Re: Récupérer le chemin d'acces d'un dossier

Re Re Michel

oui c'est ça

bon après midi toi aussi
Ludovic
 
Vieux 09/01/2005, 15h36   #9 (permalink)
michel
Guest
 
Messages: n/a
Par défaut Re: Récupérer le chemin d'acces d'un dossier

rebonjour Ludovic

cet exemple permet de rechercher un dossier (nommé "wiki pages" dans l'exemple ) et d'afficher le chemin complet trouvé
necessite d'activer la reference Microsoft Scripting RunTime
dans Visual Basic Editor (Alt + F11)
menu Outils
References
Coches la ligne "Microsoft Scripting RunTime"
cliques sur OK pour valider

inutile de dire que la recherche peut etre longue s'il y a beaucoup de dossiers sur le disque
la macro ne prend pas en compte le fait qu'il puisse y avoir plusieurs dossiers portant le meme nom


Option Compare Text
Sub TestPresenceDossier()
'texté avec WinXP et Excel2002
Dim Racine As String

Racine = "C:\"
ListFilesInFolder Racine, True
End Sub

Sub ListFilesInFolder(SourceFolderName As String, IncludeSubfolders As Boolean)
' adapté de Ole P Erlandsen
'necessite d'activer la reference Microsoft Scripting RunTime
Dim Fso As Scripting.FileSystemObject
Dim SourceFolder As Scripting.Folder, SubFolder As Scripting.Folder

On Error GoTo Fin

Set Fso = CreateObject("Scripting.FileSystemObject")
Set SourceFolder = Fso.GetFolder(SourceFolderName)

If IncludeSubfolders Then
For Each SubFolder In SourceFolder.subfolders

If SubFolder.Name = "wiki pages" Then 'adapter le nom du dossier recherché
MsgBox SubFolder.Path
IncludeSubfolders = False
End If

ListFilesInFolder SubFolder.Path, IncludeSubfolders
Next SubFolder
End If

Fin:
End Sub


bon apres midi
MichelXld
 
Vieux 09/01/2005, 15h57   #10 (permalink)
Ludovic
Guest
 
Messages: n/a
Par défaut Re: Récupérer le chemin d'acces d'un dossier

Rebonjour Michel,

la ligne

ListFilesInFolder SubFolder.Path, IncludeSubfolders

est pour afficher le chemin à l'écran ? à quoi sert 'IncludeSubfolders'

le chemin complet est dans SubFolder.Path, si j'ai bien compris.

Merci pour ta solution.

Ludovic
 
Vieux 09/01/2005, 16h14   #11 (permalink)
michel
Guest
 
Messages: n/a
Par défaut Re: Récupérer le chemin d'acces d'un dossier

rebonjour Ludovic

le chemin complet est bien dans SubFolder.Path


ListFilesInFolder est une procedure de Ole P Erlandsen qui permet d'effectuer la recherche dans tous les sous répertoires d'un dossier

SubFolder.Path correspond au chemin des dossiers parcourus ( c'est l'information que tu recherches )

IncludeSubfolders est une variable boolean (True/False) qui permet de définir si l'on souhaite parcourir les sous dossiers .
Dans l'exemple , lorqu'un dossier nommé "wiki pages" est trouvé , la variable IncludeSubfolders est passée à False pour arreter la recherche

la ligne ListFilesInFolder SubFolder.Path, IncludeSubfolders permet donc de parcourir tous les répertoires et sous répertoires tant que la recherche est infructueuse


ps
est ce que la macro repond à ta demande ?


bon apres midi
MichelXld
 
Vieux 09/01/2005, 16h31   #12 (permalink)
Ludovic
Guest
 
Messages: n/a
Par défaut Re: Récupérer le chemin d'acces d'un dossier

Rebonjour Michel,

C'est SUPER EXTRA, c'est complètement ce que je cherchais.

Je te remercie Enormément Michel.

Bonne Fin de Week End,

Ludovic.
 
ANNONCES
 

Liens sociaux

Outils de la discussion

Règles de messages
Vous ne pouvez pas créer de nouvelles discussions
Vous ne pouvez pas envoyer des réponses
Vous ne pouvez pas envoyer des pièces jointes
Vous ne pouvez pas modifier vos messages

Les balises BB sont activées : oui
Les smileys sont activés : oui
La balise [IMG] est activée : oui
Le code HTML peut être employé : non
Trackbacks are oui
Pingbacks are oui
Refbacks are oui


Fuseau horaire GMT +2. Il est actuellement 21h20.


(C) 2006 Excel Downloads