Soyez le premier à donner votre avis sur cette source.
Vue 42 737 fois - Téléchargée 3 831 fois
'Utilisation de la fonction : 'mettre une commande de type : Call OuvrirAvecCD("xls", "c:\", "TOTO fait du ski") 'Puis ont peux récupérer le chemin du fichier sélectionné par l'utilisateur 'dans la variable "FichierSélectionné" 'c'est tout ! Public FichierSélectionné As String Public Function OuvrirAvecCD(Extension As String, DOSSIER As String, TITRE As String) FichierSélectionné = "" Set CD = CreateObject("MSComDlg.CommonDialog") On Error Resume Next Debut: With CD .MaxFileSize = 260 .InitDir = DOSSIER .CancelError = True .DialogTitle = TITRE .Filter = "Fichiers " & Extension & "(*." & Extension & ")|*." & Extension & "|" .FilterIndex = 1 Err.Clear .ShowOpen If Err.Number <> 0 Then If MsgBox("Vous n'avez pas sélectionné de fichier." & Chr(10) & "Voulez-vous annuler la sélection ?", vbYesNo, TITRE) = vbYes Then Exit Function Else GoTo Debut End If End If End With FichierSélectionné = CD.FileName Set CD = Nothing End Function
8 nov. 2010 à 10:29
Bonne programmation Samloba.
7 nov. 2010 à 13:42
Filter = "Fichiers Access|*.mdb"
merci
7 nov. 2010 à 13:20
ce code vient de me sauver la mise
access 2007+vb6 (pour compiler ma dll activeX)
seul probleme le filtre n'est pas appliqué, je vois tous les fichiers
et le choix devient difficile
23 mars 2010 à 10:11
Je pense que ton erreur d'activeX doit venir du fait que la DLL comdlg32.dll n'est pas présente dans ton C:\WINDOWS\System32.
Si elle n'est pas installée c'est que ton Office 2007 n'as pas été installé complètement. Je te conseille donc d'aller dans ajout/suppression de programmes, de cliquer sur modifier l'installation de ton office et de choisir une installation complète d'office (tout exécuter à partir du disque dur). Après ça, essaye se bout de code :
Public FichierSélectionné As String
Public Function OuvrirAvecCD(Extension As String, DOSSIER As String, TITRE As String)
FichierSélectionné = ""
Set CD = CreateObject("MSComDlg.CommonDialog")
On Error Resume Next
Debut:
With CD
.MaxFileSize = 260
.InitDir = DOSSIER
.CancelError = True
.DialogTitle = TITRE
.Filter = "Fichiers " & Extension & "(*." & Extension & ")|*." & Extension & "|"
.FilterIndex = 1
Err.Clear
.ShowOpen
If Err.Number <> 0 Then
If MsgBox("Vous n'avez pas sélectionné de fichier." & Chr(10) & "Voulez-vous annuler la sélection ?", vbYesNo, TITRE) = vbYes Then
Exit Function
Else
GoTo Debut
End If
End If
End With
FichierSélectionné = CD.Filename
Set CD = Nothing
End Function
Public Sub test()
OuvrirAvecCD "xls", "\\TON_SERVEUR\TON_PARTAGE", "Merci de sélectionner un fichier xls"
MsgBox FichierSélectionné
End Sub
Si ça ne marche toujours pas, télécharge la DLL ici : http://www.dll-files.com/dllindex/dll-files.shtml?comdlg32
Et ensuite copie là dans ton C:\WINDOWS\System32 et réessaye.
Fait moi savoir si ça focntionne ou non.
Bonne chance.
23 mars 2010 à 10:03
2007 pour excel
ps : j'ai déplacé des morceaux de codes au cours de mes tests, et il semblerait que chdir + getopenfile fasse bien le changement de chemin maintenant, y compris sur un chemin autre que C D E...
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.