XL 2019 Se prépositionner sur un répertoire défini avant d'exécuter ShowFileOpenDialog FileList pour récupérer les noms des fichiers de ce répertoire

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

ESCOUGER2022

XLDnaute Junior
Bonjour,
Je souhaiterais afficher via la commande "ShowFileOpenDialog FileList" la liste des fichiers d'un répertoire dont le nom a été prédéterminé (par exemple "C:\CVS\GUIDES")

Malheureusement les fichiers affichés sont ceux du répertoire que j'avais sélectionné lors de la précédente utilisation de ce même programme.
ChDrive et CHDIR sont sans effet.
______________________________________________________________________________________
exemple: Je lance mon tableau et le répertoire qui m'est proposé pour la sélection des
fichiers est C:\REP1
Je sélectionne 2 fichiers et mon programme se déroule normalement.

Le lendemain je relance ce même tableau. Le répertoire proposé est toujours C:\REP1
Je parcoure l'arborescence et me place sur C:\REP2
Je sélectionne 3 fichiers sur ce répertoire C:\REP2 et mon programme se termine normalement

Le surlendemain je relance ce même tableau. Le répertoire proposé est encore C:\REP2
__________________________________________________________
Comment puis-je faire en sorte que, lorsque le lance mon tableau, le répertoire proposé pour la sélection des fichiers soit toujours "C:\CVS\GUIDES"

Merci d'avance de m'aider à trouver une solution. Rien de ce que j'ai trouvé sur votre site, ni ailleurs ne semble répondre à ce souci.
GE
 
Bonsoir Escouger,
Si j'ai bien compris vous voudriez qu'à chaque ouverture le dossier de base soit "C:\CVS\GUIDES", alors pourquoi ne pas le définir comme variable ( Chemin="C:\CVS\GUIDES" ) et utiliser cette variable dans "ShowFileOpenDialog FileList" ?
 
Merci pour cette si rapide réponse. Vous avez parfaitement compris ma question.
Voyez ci-dessous la commande "Showfileopendialog" de mon VBA

Je ne sais pas ou parametrer le "chemin" dans tous ces éléments
Le seul que je vois serait .lpstrInitialDir mais si c'était le bon, le programme proposerait toujours C:\CVS, ce qui n'est pas le cas.
Peut-être existe-t-il un autre paramètre ...que je ne connais pas?

Sub ShowFileOpenDialog(ByRef FileList As Collection, sfilter)
Dim OpenFile As OPENFILENAME
Dim lReturn As Long
Dim FileDir As String
Dim FilePos As Long
Dim PrevFilePos As Long
With OpenFile
.lStructSize = Len(OpenFile)
.hwndOwner = 0
.hInstance = 0
.lpstrFilter = sfilter
.nFilterIndex = 1
.lpstrFile = String(4096, 0)
.nMaxFile = Len(.lpstrFile) - 1
.lpstrFileTitle = .lpstrFile
.nMaxFileTitle = .nMaxFile
.lpstrInitialDir = "C:\CVS"
.lpstrTitle = "Multi Select Drawings"
.flags = OFN_HIDEREADONLY + _
OFN_PATHMUSTEXIST + _
OFN_FILEMUSTEXIST + _
OFN_ALLOWMULTISELECT + _
OFN_EXPLORER
lReturn = GetOpenFileName(OpenFile)
If lReturn <> 0 Then
FilePos = InStr(1, .lpstrFile, Chr(0))
If Mid(.lpstrFile, FilePos + 1, 1) = Chr(0) Then
FileList.Add .lpstrFile
Else
FileDir = Mid(.lpstrFile, 1, FilePos - 1)
Do While True
PrevFilePos = FilePos
FilePos = InStr(PrevFilePos + 1, .lpstrFile, Chr(0))
If FilePos - PrevFilePos > 1 Then
FileList.Add FileDir + "\" + _
Mid(.lpstrFile, PrevFilePos + 1, _
FilePos - PrevFilePos - 1)
Else
Exit Do
End If
Loop
End If
End If
End With
End Sub
 
Re, Bonsoir Patrick,
Mais dans votre contexte que vous apporte de plus votre ShowFileOpenDialog par rapport à un classique Application.GetOpenFilename . Comme par ex :
VB:
Sub OuvertureFichiers()
    On Error GoTo Fin
    Dim Fichier As Variant
    Const Dossier As String = "C:\CVS\GUIDES\"
    ChDrive Dossier: ChDir Dossier
    Fichier = Application.GetOpenFilename("Excel files (*.xls*), *.xls*", , "EXEMPLE D'OUVERTURE FICHIER TYPE XL", , False)
    If Fichier = False Then
        MsgBox "Pas de fichier sélectionné"
    Else
        MsgBox "Fichier sélectionné : " & Fichier
    End If
    Exit Sub
Fin:
    MsgBox "Erreur rencontrée."
End Sub
Il ouvre la fenêtre sur le bon dossier et filtre sur le type de fichier demandé.
 
Bonsoir Sylvanu,
La différence réside dans le fait que je souhaite que tous les fichiers du répertoire (éventuellement filtrés ) soient affichés et permettent ensuite à l'opérateur de faire une selection multiple sur un ou plusieurs fichiers qui seront ensuite mis en pièce(s) jointe(s) dans le mail généré.
Sous réserve de n'avoir pas compris ce que vous proposez, je ne peux choisir qu'un seul fichier avec votre méthode.
Merci
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour