Re : Récupérer le chemin d'un dossier avec getfolder
Bonjour,
essaye la fonction "Dir".
Dir, fonction
Renvoie une valeur de type String représentant le nom d'un fichier, d'un répertoire ou d'un dossier correspondant à une chaîne de recherche, à un attribut de fichier ou au nom de volume d'un lecteur.
Syntaxe
Dir[(pathname[, attributes])]
La syntaxe de la fonction Dir comprend les éléments suivants :
Élément Description
pathname Facultatif. Expression de chaîne définissant un nom de fichier. Cet argument peut préciser le répertoire ou dossier et le lecteur. Une chaîne de longueur nulle est renvoyée si l'argument pathname est introuvable.
attributes Facultatif. Constante ou expression numérique, dont la somme définit des attributs de fichier. Si cet argument est omis, tous les fichiers sans attributs correspondant à l'argument pathname sont renvoyés.
Valeurs
L'argument attributes peut prendre les valeurs suivantes :
Constante Valeur Description
vbNormal 0 (Par défaut) Spécifie les fichiers sans attributs.
vbReadOnly 1 Spécifie les fichiers accessibles en lecture seule ainsi que les fichiers sans attributs.
vbHidden 2 Spécifie les fichiers cachés ainsi que les fichiers sans attributs.
vbSystem 4 Spécifie les fichiers système ainsi que les fichiers sans attributs. Non disponible sur le Macintosh.
vbVolume 8 Spécifie un nom de volume ; si un autre attribut est spécifié, la constante vbVolume est ignorée. Non disponible sur Macintosh.
vbDirectory 16 Spécifie les dossiers ainsi que les fichiers sans attributs.
vbAlias 64 Le nom du fichier spécifié est un alias. Disponible uniquement sur le Macintosh.
Note Ces constantes sont définies par Visual Basic pour Applications et peuvent remplacer des valeurs réelles partout dans votre code.
Remarques
Dans Microsoft Windows, La fonction Dir permet d'utiliser des jokers ou caractères génériques (* ou ?) pour sélectionner plusieurs fichiers. Sur le Macintosh, ces caractères sont considérés comme des caractères de noms de fichiers valides et ne peuvent être utilisés comme caractères génériques pour spécifier des fichiers multiples.
Étant donné que le Macintosh ne gère pas les caractères génériques, utilisez le type de fichier pour identifier les groupes de fichiers. Vous pouvez utiliser la fonction MacID pour indiquer le type de fichier au lieu d'utiliser les noms de fichier. Par exemple, l'instruction suivante renvoie le nom du premier fichier TEXT dans le dossier courant :
Dir("Chemin d'accès", MacID("TEXT"))
Pour faire une itération sur tous les fichiers d'un dossier, indiquez une chaîne vide :
Dir("")
Si vous utilisez la fonction MacID à l'aide de l'instruction Dir dans Microsoft Windows, une erreur se produit.
Toute valeur de l'argument attribute supérieure à 256 est considérée comme une valeur MacID.
Vous devez définir l'argument pathname lors du premier appel de la fonction Dir, ou une erreur se produit. Si vous indiquez des attributs de fichier, l'argument pathname doit être présent.
La fonction Dir renvoie le premier nom de fichier correspondant à l'argument pathname. Pour extraire d'autres noms de fichier correspondant à l'argument pathname, appelez de nouveau la fonction Dir sans préciser d'arguments. Quand tous les fichiers ont été indiqués, la fonction Dir renvoie une chaîne de longueur nulle (""). Lorsqu'une chaîne de longueur nulle a été renvoyée, vous devez indiquer l'argument pathname dans les appels ultérieurs de la fonction ou une erreur se produit. Vous pouvez indiquer un nouvel argument pathname sans avoir extrait tous les noms de fichier correspondant à l'argument pathname courant. Il est cependant impossible d'appeler la fonction Dir de manière récursive. Les appels Dir comportant l'attribut vbDirectory ne renvoient pas continuellement les sous-dossiers.
Conseil Les noms de fichiers extraits n'étant pas classés, vous pouvez les stocker dans un tableau, puis trier ce dernier.