Actuellement je suis à la recherche de solution pour un point me bloquant depuis pas mal de temps.
Il s'agit de la sélection multi fichier que je veux ensuite réutiliser.
sub test ()
Dim fd As Office.FileDialog
'Créer un objet FileDialog
Set fd = Application.FileDialog(msoFileDialogOpen)
'Titre de la boîte de dialogue
fd.title = "Sélectionnez un ou plusieurs fichiers"
'Autoriser la sélection multiple
fd.AllowMultiSelect = False
'Définir les types de fichiers autorisés
fd.Filters.Clear
fd.Filters.Add "Tous les fichiers", "*.*"
fd.Filters.Add "Images", "*.gif; *.jpg; *.jpeg; *.png; *.bmp"
'Présélectionner le type de fichier
fd.FilterIndex = 1
'Pas de nom par défaut
fd.InitialFileName = ""
'Afficher la boîte de dialogue
If fd.Show() Then
' Lister les chemins de tous les fichiers sélectionnés
For Each varFichier In fd.SelectedItems
strListe = strListe & varFichier
Next
End If
Set fd = Nothing
End Sub
Le problème étant que si fd.AllowMultiSelect = False alors il ne prend que par exemple
"C:\dossier/dossier/fichier"
Pour ce cas la, ça fonctionne.
Les choses se compliquent une fois que fd.AllowMultiSelect = True ce qui signifie qu'il est possible de sélectionner dans la boite de dialogue par un CTR + clique plusieurs fichiers.
Cependant ma variable strListe si je choisis plusieurs fichiers va être comme ceci :
"C:\dossier/dossier/fichierC:\dossier/dossier/fichierC:\dossier/dossier/fichier" les répertoires se mettent bout à bout et il est donc impossible de réutiliser la variable dans quoi que ce soit.
j'avais testé de mettre strListe = strListe & varFichier & ","
comme ça lorsque je sélectionne plusieurs fichier les noms de répertoires se sépare pas une virgules mais dérrière impossible de séparer chaque répertoires.
Autre solution utiliser les SelectedItems(1),SelectedItems(2)etc...
Le problème étant que lorsque l'on sélectionne plusieurs fichiers au delà des SelectedItems(2) ici par exemple on a une erreur. Il faut choisir autant de fichier que on a déclaré de SelectedItems, et je ne veux pas brider les utilisateurs en nombre de fichier à sélectionner.
Il me faut une astuce pour que un utilisateur quelconque puisse ouvrir la boite de dialogue, sélectionner un ou plusieurs fichiers et que ces fichiers soit stockés dans une ou plusieurs variables afin de les réutiliser ( dans un mail automatique ) .