Box "parcourir" en vbs - VB/VBA/VBS - Programmation
Marsh Posté le 04-07-2005 à 17:33:38
Salut, je sais pas ce que tu entends par vbs mais avec vb(excel) la code suivant permet d'aller choisir un fichier et de récupérer l'adresse sur le disque dur.
chemin = Application.GetOpenFilename("All Files (*.*),*.*", , "choix du fichier", , True)
@+
Marsh Posté le 04-07-2005 à 21:35:41
J'ai écrit code suivant il y a quelques mois ( préparartion de scripts pour du 2003 server )
'===================================================
' la fonction suivante permet de choisir un fichier
' Elle retourne le chemin\nomdufichier
' ou "ANNUL" si appui sur le bouton annuler
'
Function select_a_file(direct)
Set objDialog = CreateObject("UserAccounts.CommonDialog" )
objDialog.Filter = "Fichiers Excel|*.xls|All Files|*.*"
objDialog.Flags = &H0200
objDialog.FilterIndex = 1
objDialog.InitialDir = direct
intResult = objDialog.ShowOpen
If intResult = 0 Then
select_a_file = "ANNUL"
Else
select_a_file = objDialog.FileName
End If
End Function
Big problème : cela ne fonctionne pas sur du 2003 server.
Mais il y a la solution qui fonctionne à la fois sur du xp et du 2003 server
( à tester sur du 2000 )
set objDialog = CreateObject("SafrcFileDlg.FileOpen" )
objDialog.OpenFileOpenDlg
wscript.echo objDialog.FileName
Marsh Posté le 05-07-2005 à 07:02:29
Bonjour,
Essaye éventuellement ceci :
Code :
|
pelw
Marsh Posté le 05-07-2005 à 11:31:28
Citation : une boite qui permette de choisir le dossier |
Oups ! ce que j'ai donné est pour la sélection d'un fichier
le code de pelw ( source ? JCBellamy ? ) est un bon début, mais plante ( chez moi sous xp ) si tu sélectionnes
un dossier tel "poste de travail" ou "mes documents" ( la sélection d'un sous dossier est OK ).
J'ai modifié le code afin qu'il ne plante pas.
Code :
|
Marsh Posté le 06-07-2005 à 12:59:04
pelw a écrit : Bonjour,
|
Ici aussi je dois te remercié pelw moi ton code marche bien (je n'ai pas tester le tient c moa car je ne comprend pas les deux arguments qu'il faut mettre dans la fonction), mais par contre j'ai changer le dosser de depart c'est a dire que j'ai mis : InitDir = WshShell.SpecialFolders("MyDocuments" ).
Ce qui marche tres bien, je me retrouve directement dans mes documents, mais le probleme est qu'ensuite l'utilisateur ne peut pas vraiement parcourir son ou ses disk durs, il ne peut aller que dans les repertoires fils et pas dans les parents. Ce qui pose probleme car j'ai pour contrainte d'etre par default dans le dossier my documents mais l'utilisateur doit pouvoir sauvegarder son fichier dans n'importe quel endroit de ses disk.
Cordialement julien
Marsh Posté le 06-07-2005 à 23:03:39
Petite mistake de ma part, j'ai oublié un " pour la chaine de caractère passée en paramètre.
Code :
|
Sinon, sauf bizarrerie uniquement sur mes postes ( xp pro sp2 + maj ), on obtient une erreur avec le code proposé par Pelw si on sélectionne bureau ou poste de travail et que l'on valide ( certains dossiers particuliers ).
Si vous avez ou n'avez pas d'erreurs sur les différents codes ci-dessus , merci d'avance pour vos remarques.
Marsh Posté le 07-07-2005 à 13:42:03
c_moa a écrit : Petite mistake de ma part, j'ai oublié un " pour la chaine de caractère passée en paramètre.
|
Tres bien merci, moi ca amrche nikel. Mais j'voue que je suis un peu pointilleux, je voudrais avoir en realité une fenetre qui soit deja sur "mes documents" par exemple mais qu'ensuite on puisse remonter dans l'arborescence... Et aussi si c possible un bouton "bureau" integrer a la fenetre... Je sais je commence a etre relou, mais je me demande si c'est pas possible changeant la valeur des constantes "no options"
Marsh Posté le 12-07-2005 à 13:58:14
c_moa a écrit : Petite mistake de ma part, j'ai oublié un " pour la chaine de caractère passée en paramètre.
|
Bonjour j'avais travailler sur d'autres trucs ses derniers jours mais j'ai aps fini de vous emebeter. Dans cette fenetre parcourrir j'aimerai y ajouter des boutons du type "parent folder" ou "bureau" etc... Quelqu'un pourrai m'aider la dessus?
Marsh Posté le 04-07-2005 à 11:12:12
Bonjour je cherche une box en vbs qui permet de parcourir le disque. je n'ai que la inputbox qui permet uniquement de mettre du texte, mais je voudrais (si ca existe) une boite qui permette de choisir le dossier ou l'on veut sauvegarder son fichier.
Merci, julien