arborescence, selection de dossier (pas fichier)

R

romfret

Guest
Salut le forum,

Malgré une recherche acharnée sur le forum, je n'ai pas réussi à trouver mon bonheur. Je voudrai par une macro afficher une boite de dialogue me permettant de selectionner un dossier (et non pas un fichier). Une fois le dossier selectionner et validé par "ok" , je voudrai juste copier le chemin dans une cellule ou dans une déclaration .. enfin bref n'importe où du moment que je l'ai en memoire après l'avoir selectionné. Je voudrai avoir également la possibilité de créer un nouveau dossier.

en vous remerciant d'avance de vos réponse,


romfret
 
M

michel

Guest
bonjour Romfret

cela me fait plaisir de te revoir sur le forum

si tu as Excel2002 , tu peux essayer :

Sub selectionRepertoire_afficherChemin()
Dim Repertoire As FileDialog

Set Repertoire = Application.FileDialog(msoFileDialogFolderPicker)
Repertoire.Show

MsgBox Repertoire.SelectedItems(1)
End Sub


bon apres midi
MichelXld
 
R

romfret

Guest
salut michel, re le forum,



Une infinité de mercis ! :p c'est nickel ! :)

@bientot, romfret
 
R

romfret

Guest
arf.... fausse joie .... en effet ca marche sur excel 2002 et > mais pas pour excel 2000 ! un autre solution ? :Z

Romfret
 
R

romfret

Guest
re,

j'ai trouvé çà sur le net :
Sub essai1212()
choix = ChoixDossierFichier("c:\", 1) '<- ici le chemin de tonchoix
If choix <> "" Then MsgBox choix
End Sub

Function ChoixDossierFichier(Racine, Optional SelType As Byte = 0)
Dim objShell, objFolder, Chemin, SecuriteSlash, FlagChoix&, Msg$

If SelType = 0 Then
FlagChoix = &H1&: Msg = "Choisissez un dossier :"
Else
FlagChoix = &H4000&: Msg = "Choisissez un fichier :"
End If

Set objShell = CreateObject("Shell.Application")
'le troisième paramètre permet de choisir
'la sélection d'un dossier ou d'un fichier (0 ou 1)
'le dernier paramètre permet de choisir le dossier racine
Set objFolder = objShell.BrowseForFolder(&H0&, Msg, FlagChoix, Racine)
On Error Resume Next
Chemin = objFolder.ParentFolder.ParseName(objFolder.Title).Path & ""
If objFolder.Title = "Bureau" Then
Chemin = "C:\Windows\Bureau"
End If
If objFolder.Title = "" Then
Chemin = ""
End If

SecuriteSlash = InStr(objFolder.Title, ":")

If SecuriteSlash > 0 Then
Chemin = Mid(objFolder.Title, SecuriteSlash - 1, 2) & ""
End If
ChoixDossierFichier = Chemin
End Function



Sous office xp j'ai bien un bouton "créer un nouveau dossier" mais sous 2000 je ne l'ai pas, il n'y aurais pas une solution ? Cette boite de dialogue est PARFAITE !

@+, romfret
 

Discussions similaires


Haut Bas