Table des matières
Le site DIR fonction dans VBA vous montre principalement le répertoire ou les fichiers d'un dossier donné. Elle peut également retourner le premier fichier avec cette fonction. Cette fonction a beaucoup d'utilisations pour obtenir des fichiers et des dossiers spécifiques. Il suffit d'insérer le chemin du fichier dans le chemin de la fonction VBA Vous trouverez peut-être plus difficile d'utiliser l'option VBA DIR Ne vous inquiétez pas, dans cet article, nous allons vous montrer quelques exemples pour une meilleure visualisation de l'utilisation de l'outil de gestion de l'information. VBA DIR J'espère que vous serez en mesure d'utiliser la fonction après avoir lu l'article. Alors, commençons.
Télécharger le cahier d'exercices
Téléchargez le cahier d'exercices suivant, qui vous aidera à mieux comprendre le sujet.
Fonction DIR.xlsmIntroduction à la fonction DIR
Résumé :
Le site VBA DIR renvoie le nom d'un fichier ou d'un répertoire à partir d'un chemin de dossier donné. Par convention, elle renvoie le premier fichier.
Syntaxe :
Dir [ (nom du chemin, [ attributs ] ) ]
Explication des arguments :
Arguments | Obligatoire/optionnel | Explication |
---|---|---|
Nom du chemin d'accès | En option | Chemin d'accès pour accéder et spécifie le fichier |
Attributs | En option | Constante ou expression numérique spécifie les attributs des fichiers correspondants |
Il y a quelques attributs prédéfinis, ils sont...
Nom de l'attribut | Description |
---|---|
vbNormal | Fichiers sans attributs spécifiques |
vbReadOnly | Fichiers en lecture seule sans attributs |
vbHidden | Fichiers cachés sans attributs |
vbSystem | Fichiers système sans attributs |
vbVolume | Étiquette du volume |
vbDirectory | Répertoires ou dossiers sans attributs |
vbAlias | Le nom de fichier spécifié est un alias |
7 exemples d'utilisation de la fonction VBA DIR dans Excel
D'après la description, vous auriez pu comprendre que la VBA DIR fournit le nom du fichier à partir du chemin d'accès fourni. Comprenons-le par un exemple. Ici, nous avons créé un répertoire Dossier Exceldemy_Folder pour vous montrer différents exemples. Ce dossier contient différents petits dossiers et fichiers.
1. trouver le nom de fichier à partir du chemin
Dans notre dossier, nous pouvons trouver un fichier spécifique en déclarant le chemin du nom du fichier.
Après avoir copié le chemin du fichier, vous devez exécuter le code.
Pour cette raison, rendez-vous sur le site Développeur onglet>> ; choisir Visual Basic Ensuite, allez sur Insérer onglet>> ; sélectionner Module. Dans le Général nous écrivons le code.
Comme notre objectif est de trouver le Nom de fichier du nom de chemin, nous définirons le nom de chemin complet (de la racine jusqu'au fichier) et notre code sera le suivant
Sub FileNames() Dim FN As String FN = Dir("E:\Exceldemy\Sales_of_January.xlsx") MsgBox FN End Sub
Ici, dans notre code, nous avons défini le chemin d'accès en tant que E:\Exceldemy\Sales_of_January.xlsx
Code Breakdown :
- Initialement, nous avons déclaré une variable de type chaîne appelée FN Et la sortie de l Dir a été enregistrée dans cette variable.
- Ensuite, le Dir trouve le nom du fichier et le renvoie à partir du chemin fourni.
- Ensuite, le MsgBox définit la sortie par la boîte de message. MsgBox renvoie la sortie en utilisant une boîte de message.
- Ensuite, exécutez le code avec l'option F5 clé.
Enfin, nous avons trouvé le fichier nommé Ventes_de_janvier.xlsx .
2. vérifier l'existence d'un répertoire
Nous pouvons vérifier l'existence d'un répertoire en utilisant la fonction Dir Écrivons le code pour vérifier si la fonction Exceldemy Ecrivez le code suivant dans la boîte générale et exécutez-le avec la commande F5 clé.
Sub CheckFile() Dim PN As String Dim File As String PN = "E:\Exceldemy" File = Dir(PN, vbDirectory) If File "" Then MsgBox File & ; " exists" Else MsgBox "The file doesn't exist" End If End Sub
Code Breakdown :
- Nous avons déclaré deux variables ; PN contient le nom de chemin complet de notre répertoire de vérification.
- Ici, au sein de la Dir nous avons défini deux valeurs, le chemin d'accès et la valeur de l'attribut en tant que vbDirectory Cette valeur d'attribut aidera à détecter le répertoire. Et la sortie de cette fonction est stockée dans le fichier d'aide à la recherche. Fichier variable.
- Si nous trouvons que la variable n'est pas vide, alors nous déclarons l'existence du répertoire à travers une boîte de message, sinon, le retour n'existe pas.
Ici, le Exceldemy existe, nous trouverons donc " Exceldemy existe ", où Exceldemy est le nom du dossier.
3. Créer un dossier qui n'existe pas
Vous pouvez créer un dossier qui n'existe pas sur votre PC. Pour cela, vous devez créer un nom de chemin qui n'existe pas dans vos dossiers. Imaginons que nous allons créer un répertoire appelé Exceldemy_1 Nous utiliserons le MkDir pour créer le répertoire, mais avant cela, nous devons écrire la commande suivante VBA code.
Sub CheckFile() Dim PN As String Dim File As String PN = "E:\Exceldemy_1" File = Dir(PN, vbDirectory) If File "" Then MsgBox File & ; " File folder exists" Else MkDir PN MsgBox "A file folder has been created with the name" & ; File End If End Sub
Ici, nous avons écrit une commande pour créer le répertoire en utilisant le chemin d'accès de l'application Else de notre code. Exécuter le code avec le F5 clé.
Le répertoire a été créé. Regardons le dossier du répertoire. L'élément Exceldemy_1 est maintenant visible sur votre ordinateur.
Lectures similaires :
- Comment appeler un sous en VBA dans Excel (4 exemples)
- Renvoyer une valeur dans une fonction VBA (valeurs de type tableau et non tableau)
- Utiliser la fonction VBA UCASE dans Excel (4 exemples)
- Comment utiliser la fonction TRIM en VBA dans Excel (définition + code VBA)
4. trouver le premier fichier d'un répertoire
La tâche principale de l Dir Tout ce que vous devez fournir à l'intérieur de la fonction est le chemin d'accès (jusqu'au répertoire conteneur), et elle retournera le tout premier fichier de ce répertoire.
Trouvons le premier fichier de notre Exceldemy Notre code sera
Sub FirstFileinFolder() Dim FN As String Dim PN As String PN = "E:\Exceldemy\" FN = Dir(PN) MsgBox "First File : " & ; FN End Sub
Vous pouvez voir le code de base ; nous avons passé le nom du chemin dans la fonction Dir fonction. Maintenant Exécuter le code avec le F5 vous trouverez le premier fichier dans ce répertoire.
5. rechercher tous les fichiers d'un répertoire
Dans la section précédente, nous avons vu comment trouver le premier nom de fichier d'un répertoire. La situation peut se présenter lorsque vous devez trouver tous les fichiers d'un répertoire spécifique. Pour trouver tous les fichiers d'un répertoire spécifique, vous devez écrire ce qui suit VBA code.
Sub AllFile() Dim FN As String Dim FL As String FN = Dir("E:\Exceldemy\") Do While FN "" FL = FL & ; vbNewLine & ; FN FN = Dir() Loop MsgBox ("File List :" & ; FL) End Sub
Voici deux variables permettant de stocker les noms de fichiers sous la forme d'un seul ( FN ), et sous forme de liste ( FL ). Faire pendant que itère jusqu'à ce qu'il ne reste plus aucun fichier dans le répertoire, en utilisant cette boucle, nous poussons chaque nom de fichier dans le fichier FL variable.
Exécutez le code, et vous trouverez tous les fichiers dans le répertoire, comme dans l'image ci-dessous.
6. trouver tous les fichiers et dossiers d'un répertoire
Nous avons mentionné dans la section précédente où trouver tous les fichiers. Nous pouvons également trouver tous les sous-dossiers d'un dossier. Pour ce faire, écrivez ce qui suit VBA que nous avons joint ci-dessous.
Sub AllFileFolders() Dim AN As String Dim Lst As String AN = Dir("E:\Exceldemy_Folder\", vbDirectory) Do While AN "" Lst = Lst & ; vbNewLine & ; AN = Dir() Loop MsgBox ("File Lst :" & ; Lst) End Sub
Le changement dans notre code est simplement l'utilisation de paramètres d'attributs. Nous avons utilisé la fonction vbDirectory dans ce domaine. Exécuter le code, et vous trouverez tous les fichiers et sous-dossiers de Dossier Exceldemy_Folder .
7. trouver tous les fichiers d'un type spécifique
Utilisation de la VBA Dir nous permet de trouver n'importe quel type de fichier particulier.
Nous allons trouver .csv de notre répertoire. Notre code sera comme le suivant-
Sub SpecialTypeFiles() Dim FL As String Dim FN As String FN = Dir("E:\Exceldemy_Folder\Exceldemy\*.csv") Do While FN "" FL = FL & ; vbNewLine & ; FN FN = Dir() Loop MsgBox ("List of .csv Files :" & ; FL) End Sub
Nous espérons que vous avez compris le code, qui utilise un mécanisme similaire pour trouver des fichiers. Dans le chemin d'accès, nous avons utilisé un joker ( * Cet astérisque (*) indique que n'importe quel caractère, jusqu'à un nombre quelconque, peut apparaître. Le caractère de remplacement a été utilisé de telle sorte que le nom du fichier peut être n'importe quoi mais doit être un .csv fichier.
Lorsque vous exécutez le code, il renverra l'information suivante .csv des fichiers de notre Exceldemy répertoire.
Section pratique
Nous avons prévu une section d'entraînement sur chaque feuille à droite pour que vous puissiez vous exercer. Veuillez le faire vous-même.
Conclusion
C'est tout pour la session d'aujourd'hui. Et ce sont quelques exemples simples de la VBA Dir dans Excel. Si vous avez des questions ou des suggestions, n'hésitez pas à nous en faire part dans la section "Commentaires". Pour une meilleure compréhension, veuillez télécharger la feuille d'exercices. Visitez notre site web, Exceldemy Merci de votre patience pour la lecture de cet article.