Comment utiliser la fonction VBA DIR dans Excel (7 exemples pratiques)

  • Partage Ça
Hugh West

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.xlsm

Introduction à 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.

Hugh West est un formateur et analyste Excel très expérimenté avec plus de 10 ans d'expérience dans l'industrie. Il est titulaire d'un baccalauréat en comptabilité et finance et d'une maîtrise en administration des affaires. Hugh a une passion pour l'enseignement et a développé une approche pédagogique unique qui est facile à suivre et à comprendre. Sa connaissance approfondie d'Excel a aidé des milliers d'étudiants et de professionnels du monde entier à améliorer leurs compétences et à exceller dans leur carrière. Grâce à son blog, Hugh partage ses connaissances avec le monde, offrant des tutoriels Excel gratuits et une formation en ligne pour aider les particuliers et les entreprises à atteindre leur plein potentiel.