![](https://codky.com/wp-content/uploads/2024/11/2751-1024x576.png)
La fonction `Dir` en VBA (Visual Basic for Applications) est utilisée pour obtenir le nom d’un fichier, d’un répertoire ou d’un ensemble de fichiers et de répertoires qui correspondent à un chemin spécifié. Elle est souvent utilisée pour itérer sur les fichiers dans un dossier ou pour vérifier l’existence d’un fichier ou d’un dossier. Voici comment l’utiliser :
Utilisation de base
Dim fileName As String
' Exemple pour obtenir le premier fichier avec l'extension .txt dans un dossier
fileName = Dir("C:exemple*.txt")
' Vérifier si un fichier est trouvé
If fileName <> "" Then
MsgBox "Fichier trouvé : " & fileName
Else
MsgBox "Aucun fichier .txt trouvé."
End If
Itérer sur tous les fichiers d’un dossier
Pour parcourir tous les fichiers d’un certain type dans un dossier, vous devez appeler `Dir` sans argument après le premier appel pour obtenir le prochain fichier :
Dim fileName As String
' Obtenir le premier fichier .txt
fileName = Dir("C:exemple*.txt")
Do While fileName <> ""
' Traitez chaque fichier ici
Debug.Print fileName
' Obtenir le fichier suivant
fileName = Dir
Loop
Vérifier l’existence d’un fichier ou d’un répertoire
Vous pouvez aussi utiliser `Dir` pour vérifier si un fichier ou un dossier existe :
Dim filePath As String
filePath = "C:exemplemonfichier.txt"
If Dir(filePath) <> "" Then
MsgBox "Le fichier existe."
Else
MsgBox "Le fichier n'existe pas."
End If
Paramètres supplémentaires
Dim dirName As String
' Trouver le premier répertoire
dirName = Dir("C:exemple*", vbDirectory)
Do While dirName <> ""
' Vérifier qu'il ne s'agit pas de . ou ..
If (GetAttr("C:exemple" & dirName) And vbDirectory) = vbDirectory Then
- Attributs : Vous pouvez spécifier des attributs de fichiers pour affiner votre recherche, par exemple `vbDirectory` pour trouver des dossiers.