Recherche path d'apres l'extention

tous69 - 24 févr. 2001 à 17:37
nabilos77 Messages postés 4 Date d'inscription vendredi 17 septembre 2004 Statut Membre Dernière intervention 17 septembre 2004 - 28 sept. 2004 à 12:16
Bonjour
Je cherche a faire un petit programme qui devra me permetre
de recuperer le path complet
de tous les fichiers du DD avec l'extention , par
exemple ,EXE.
(Comme la recherche de fichier du navigateur de Windows)

Etant novice en VB5 je pense qu'il faut passer par un API.

Je vous remerci de l'aide que vous pourriez m'apporter
D'avance merci

tous69@aol.com

2 réponses

Non, tu utilises simplement l'instruction Dir, il y a un exemple complet livré avec VB.

Amitiés - Renaud -
0
nabilos77 Messages postés 4 Date d'inscription vendredi 17 septembre 2004 Statut Membre Dernière intervention 17 septembre 2004
28 sept. 2004 à 12:16
esai d'ecrire le programme suivant:
Option Compare Database
Option Explicit
Declare Function GetOpenFileName Lib "comdlg32.dll" Alias "GetOpenFileNameA" (pOpenfilename As OpenFileName) As Boolean
Declare Function GetSaveFileName Lib "comdlg32.dll" Alias "GetSaveFileNameA" (pOpenfilename As OpenFileName) As Boolean

' Déclaration d'un nouvel Objet : Bilan d'importation
Type BilanImport
Nb_Fiches_Importés As Long
Nb_Fiches_Impactées As Long
Nb_Fiches_Modifiées As Long
Nb_Doublons_Trouvées As Long
Nb_Fiches_à_Problèmes As Long
End Type

' Déclaration d'un nouvel Objet : caractèristiques d'un fichier
Type OpenFileName
lStructSize As Long
hwndOwner As Long
hInstance As Long
lpstrFilter As String
lpstrCustomFilter As Long
nMaxCustrFilter As Long
NFilterIndex As Long
lpstrFile As String
nMaxFile As Long
lpstrFileTitle As String
nMaxFileTitle As Long
lpstrInitialDir As String
lpstrTitle As String
Flags As Long
nFileOffset As Integer
nFileExtension As Integer
lpstrDefExt As String
lCustrData As Long
lpfnHook As Long
lpTemplateName As Long
End Type

Const OFN_ALLOWMULTISELECT = &H200
Const OFN_CREATEPROMPT = &H2000
Const OFN_EXPLORER = &H80000
Const OFN_FILEMUSTEXIST = &H1000
Const OFN_HIDEREADONLY = &H4
Const OFN_NOCHANGEDIR = &H8
Const OFN_NODEREFERENCELINKS = &H100000
Const OFN_NONETWORKBUTTON = &H20000
Const OFN_NOREADONLYRETURN = &H8000
Const OFN_NOVALIDATE = &H100
Const OFN_OVERWRITEPROMPT = &H2
Const OFN_PATHMUSTEXIST = &H800
Const OFN_READONLY = &H1
Const OFN_SHOWHELP = &H10

Function Sel_Fichier(Optional Filtre As String) As String
On Error GoTo TraitementErreurs
Dim Message$, Filter$, filename$, FileTitle$, DefExt$
Dim Title$, szCurDir$, APIResults%
Dim OpenFileName As OpenFileName
' definit la chaine filtre et allocation
Select Case (Filtre)
Case Is = "mdb"
Filter$ = "Access (*.mdb)" & VBA.Chr$(0) & "*.MDB;*.MDA" & VBA.Chr$(0)
Case Is = "xls"
Filter$ = "Excel (*.xls)" & VBA.Chr$(0) & "*.XLS" & VBA.Chr$(0)
Case Is = "txt"
Filter$ = Filter$ & "Text (*.txt)" & VBA.Chr$(0) & "*.TXT" & VBA.Chr$(0)
Case Is = "jpg"
Filter$ = Filter$ & "Jpeg (*.jpg)" & VBA.Chr$(0) & "*.JPG" & VBA.Chr$(0)
Case Else
Filter$ = "import fichier (*.mdb;*.xls;*.txt;)" & VBA.Chr$(0) & "*.MDB;*.MDA;*.XLS;*.TXT;" & VBA.Chr$(0)
End Select

'allocation de l'espace pour la chaine de retour
filename$ = VBA.Chr$(0) & Space$(255) & VBA.Chr$(0)
FileTitle$ = Space$(255) & VBA.Chr$(0)
' nom donné au dialog box
Title$ = "Sélection du fichier à importer : " & VBA.Chr$(0)
' définit le path par défaut
szCurDir$ = CurDir$ & VBA.Chr$(0) '"c:\document\OptimNokia\Format" If Dir$(szCurDir$) "" Then szCurDir$ "p:\document"
' définit la structure de donnée avant d'appeler la fonction
OpenFileName.lStructSize = Len(OpenFileName)
' boite de dialog est lié au formulaire on passe le window handle
'OPENFILENAME.hWndOwner = Screen.ActiveForm.hWnd
' Sinon on passe un pointeur null
'OPENFILENAME.hwndOwner = 0&
With OpenFileName .lpstrFilter Filter$: .NFilterIndex 1: .lpstrFile = filename$ .nMaxFile 511: .lpstrFileTitle FileTitle$: .nMaxFileTitle = 511 .lpstrTitle Title$: .Flags OFN_FILEMUSTEXIST Or OFN_READONLY: .lpstrDefExt = DefExt$
.hInstance 0: .lpstrCustomFilter 0: .nMaxCustrFilter = 0: .lpstrInitialDir = szCurDir$: .nFileOffset = 0 .nFileExtension 0: .lCustrData 0: .lpfnHook = 0: .lpTemplateName = 0
End With
'on passera les données désirées à la fenêtres API

APIResults% = GetOpenFileName(OpenFileName)
If APIResults% <> 0 Then
filename$ = OpenFileName.lpstrFile
filename$ = Left$(filename$, InStr(filename$, VBA.Chr$(0)) - 1)
' message$ = "La base choisie est " + filename$
Else
' message$ = "Aucun fichier n'a été sélectionné"
Exit Function
End If

Sel_Fichier = CStr(filename$)
Exit Function

TraitementErreurs:
MsgBox ("Erreur dans le module import fonction Sel_Fichier()" & Err.Description & Err.Number)
End Function
0
Rejoignez-nous