|
Publicité | ||||||||||||||||||||||
|
|
#1 |
|
Nouveau membre du Club
![]() Date d'inscription: avril 2008
Localisation: Le Mans
Messages: 78
|
Bonjour,
Ce post : http://www.developpez.net/forums/d47...topenfilename/ correspond exactement à ce que je recherche. Mais, (parce que s'il n'y avait pas de mais j'aurais surement pas remis un post), chez moi, la première solution m'ouvre bien une fenetre pour que je choississe le fichier dans le dossier spécifié, mais par contre, ça ne m'ouvre pas le dit-fichier par la suite ?! Et en plus, si je veux ouvrir un fichier, ça me met une msgbox avec le chemin, et si je mets annuler, ça me met une message avec FAUX écrit à l'interieur. Donc, revoici le code : Code :
Sub test() 'Selectionne un disque ChDrive "C:" 'Selectionne un repertoire sur ce disque ChDir "C:\Documents and Settings\Default User\Mes documents" 'La boite de dialogue s'affiche avec le repertoire selectionne Msgbox Application.GetOpenFilename End sub Merci beaucoup ! Secco |
|
|
|
|
|
#2 |
|
Futur Membre du Club
![]() Date d'inscription: août 2005
Messages: 37
|
Bonjour, Secco,
L'instruction GetOpenFileName fait ce qu'elle doit faire, c'est à dire faire apparaître la fenêtre d'ouverture de fichier. Je ne suis pas un expert, mais dans ton code, tu ne précises pas le nom du fichier à ouvrir. J'ai trouvé quelque chose ici : http://vb.developpez.com/faqvba/?page=3.2#BookOpen En espérant t'avoir aidé. Bonne journée Chordially |
|
|
|
|
|
#3 |
|
Expert Confirmé
![]() Date d'inscription: juillet 2008
Localisation: Elsass
Âge: 24
Messages: 1 887
|
Bonjour,
Comme ce la viens a été dit Getopenfilename se contente de donner le chemin du fichier. C'est son boulot pas plus pas moins (d'ailleur de légère notion d'anglais le signale, obtenir le nom du fichier) (par contre regarde l'aide car tu peux chosir le type de fichier affiché) Regarde l'aide sur la fonction Code :
dim chemin as string chemin=Application.GetOpenFilename("Fichier excel (*.xl*), *.xl*, Fichier excel 97-2003 (*.xls), *.xls, Tous (*.*),*.*") 'ouvre fichier excel 07 et 97-2003 if chemin="Faux" then msgbox "vous avez annulé" exit sub endif |
|
|
|
|
|
#4 |
|
Nouveau membre du Club
![]() Date d'inscription: avril 2008
Localisation: Le Mans
Messages: 78
|
Merci pour vos réponses
Donc, ça signifie que même si ça m'ouvre la fenêtre de "choix d'un fichier à ouvrir", même si l'utilisateur choisit un fichier dans le dossier, ça ne l'ouvrira pas si je ne spécifie pas le type de fichier qu'il doit ouvrir ? Je n'ai pas mon document sous les yeux, mais demain matin je m'y remets et je vous redis la suite. A+ Secco |
|
|
|
|
|
#5 |
|
Membre expérimenté
![]() Date d'inscription: juin 2006
Localisation: Saint Thois
Messages: 516
|
Salut, GetOpenFilename [F1]
|
|
|
|
|
|
#6 |
|
Expert Confirmé
![]() Date d'inscription: juillet 2008
Localisation: Elsass
Âge: 24
Messages: 1 887
|
Getopenfilename n'ouvre pas les fichier elle te donne juste le nom du fichier en question, pas plus pas moins. Spécifié le type de fichier ne fait que aider l'utilisateur a trouver ce qu'il cherche.
C'est a toi de dire comment ouvrir le fichier qui a été choisi. (d'ailleur tu n'est pas obligé de vouloir l'ouvrir tu peux vouloir le supprimer ou le déplacer, c'est pour ca que ca ne serait vraiment pas pratique que cela ouvre le fichier en question a chaque fois) Comme le dit kiki29 de manière très synthétique. Regarde ce que dit l'aide cela t'aidera a comprendre (faut dire que c'est son boulot )
|
|
|
|
|
|
#7 |
|
Nouveau membre du Club
![]() Date d'inscription: avril 2008
Localisation: Le Mans
Messages: 78
|
Bonjour
Et voilà ma solution. Code :
Workbooks.Open Filename:=Application.GetOpenFilename("Excel Files (*.xls),*.xls") Secco |
|
|
|
|
|
#8 |
|
Membre Expert
![]() Date d'inscription: septembre 2007
Messages: 1 455
|
Bonjour à tous,
Ton code fonctionne, mais que se passe-t-il si la personne clique sur annulé ? Pour le tester tu peux faire : Code :
Dim QuelFichier As Variant QuelFichier = Application.GetOpenFilename("Excel Files (*.xls),*.xls") If VarType(QuelFichier) = vbBoolean Then Exit Sub End If Workbooks.Open Filename:= QuelFichier
__________________
|
|
|
|
|
|
![]() |
||
[XL-2003] Le choix d'un répertoire par défaut dans un GetOpenFileName fonctionne imparfaitement
|
||
| Outils de la discussion | |
|
|