Astuce: Les autres langues sont Google-Traduction. Vous pouvez visiter le English version de ce lien.
Se connecter
x
or
x
x
S'enregistrer
x

or

Comment vérifier si un dossier existe et sinon le créer?

Avez-vous déjà essayé de vérifier si un dossier existe ou non à partir de la feuille de calcul Excel? Dans cet article, je vais parler de vérifier si un dossier existe dans un chemin spécifié, sinon, le dossier sera créé automatiquement sous le chemin.

Vérifiez si un dossier existe dans un chemin de fichier spécifique avec le code VBA

Créer le dossier s'il n'existe pas dans un chemin de fichier spécifique avec le code VBA


flèche bleue droite bulle Vérifiez si un dossier existe dans un chemin de fichier spécifique avec le code VBA


Le code VBA suivant peut vous aider à vérifier si un dossier existe dans un chemin de fichier spécifique, procédez comme suit:

1. Maintenez le ALT + F11 clés pour ouvrir le Microsoft Visual Basic pour applications fenêtre.

2. Cliquez insérer > Moduleet collez le code suivant dans le Module Fenêtre.

Code VBA: vérifiez si un dossier existe dans un chemin de fichier spécifique:

Sub Test_Folder_Exist_With_Dir()
'Updateby Extendoffice 20161109
    Dim sFolderPath As String
    sFolderPath = "C:\Users\DT168\Desktop\Test folder"
    If Right(sFolderPath, 1) <> "\" Then
        sFolderPath = sFolderPath & "\"
    End If
    If Dir(sFolderPath, vbDirectory) <> vbNullString Then
        MsgBox "Folder exist", vbInformation, "Kutools for Excel"
    Else
        MsgBox "Folder doesn't exist", vbInformation, "Kutools for Excel"
    End If
End Sub

Veuillez noter que : Dans le code ci-dessus, vous devez modifier le chemin d'accès et le nom du dossier Dossier C: \ Users \ DT168 \ Desktop \ Test à votre besoin.

3. Puis appuyez F5 clé pour exécuter ce code, vous obtiendrez les résultats suivants:

dossier doc existe 1


flèche bleue droite bulle Créer le dossier s'il n'existe pas dans un chemin de fichier spécifique avec le code VBA

Vérifiez si un dossier existe dans un chemin de fichier, sinon, pour le créer sous ce chemin de fichier spécifique, le code VBA suivant peut vous aider à terminer ce travail.

1. Maintenez le ALT + F11 clés pour ouvrir le Microsoft Visual Basic pour applications fenêtre.

2. Cliquez insérer > Moduleet collez le code suivant dans le Module Fenêtre.

Code VBA: Créez un dossier s'il n'existe pas dans un chemin de fichier:

Sub MakeMyFolder()
'Updateby Extendoffice 20161109
    Dim fdObj As Object
    Application.ScreenUpdating = False
    Set fdObj = CreateObject("Scripting.FileSystemObject")
    If fdObj.FolderExists("C:\Users\DT168\Desktop\Test folder") Then
        MsgBox "Found it.", vbInformation, "Kutools for Excel"
    Else
        fdObj.CreateFolder ("C:\Users\DT168\Desktop\Test folder")
        MsgBox "It has been created.", vbInformation, "Kutools for Excel"
    End If
    Application.ScreenUpdating = True
End Sub

Note: Dans le code ci-dessus, vous devez modifier le chemin d'accès et le nom du dossier Dossier C: \ Users \ DT168 \ Desktop \ Test à votre besoin.

3. Après avoir collé le code, appuyez sur F5 clé pour l'exécuter:

(1.) Si le dossier existe, une boîte de dialogue apparaîtra comme suit capture d'écran:

dossier doc existe 2

(2.) Si le dossier n'existe pas, il sera créé sous le chemin spécifique à la fois, et une boîte de dialogue apparaîtra pour vous rappeler que le dossier a été créé, voir capture d'écran:

dossier doc existe 3


Kutools for Excel résout la plupart de vos problèmes et augmente votre productivité de 80%

  • Réutilisation: Insérer rapidement formules complexes, graphiques et tout ce que vous avez utilisé auparavant; Crypter les cellules avec mot de passe Créer une liste de diffusion et envoyer des emails ...
  • Super Formula Bar (éditez facilement plusieurs lignes de texte et de formule); Disposition de lecture (facilement lire et éditer un grand nombre de cellules); Coller à la gamme filtrée...
  • Fusionner les cellules / rangées / colonnes sans perdre de données; Contenu des cellules divisées; Combiner les lignes / colonnes en double... Prévenir les cellules en double; Comparer les plages...
  • Sélectionnez Dupliquer ou Unique Des rangées; Sélectionnez les lignes vierges (toutes les cellules sont vides); Super Find et Fuzzy Find dans de nombreux cahiers d'exercices; Sélection aléatoire ...
  • Copie exacte Plusieurs cellules sans changer la référence de la formule; Créer automatiquement des références à plusieurs feuilles; Insérer des balles, Cases à cocher et plus ...
  • Extrait du texte, Ajouter du texte, Supprimer par position, Supprimer l'espace; Créer et imprimer des sous-totaux de pagination; Conversion entre contenu de cellules et commentaires...
  • Super filtre (enregistrer et appliquer des schémas de filtrage à d'autres feuilles); Tri avancé par mois / semaine / jour, fréquence et plus; Filtre spécial en gras, en italique ...
  • Combinaison de classeurs et de feuilles de calcul; Fusionner les tables en fonction des colonnes clés; Fractionner les données en plusieurs feuilles; Conversion par lots xls, xlsx et PDF...
  • Plus que de puissantes fonctionnalités 300. Prend en charge Office / Excel 2007-2019 et 365. Prend en charge toutes les langues. Déploiement facile dans votre entreprise ou organisation. Fonctionnalités complètes Essai gratuit du jour 30.
kte tab 201905

Office Tab apporte une interface à onglets à Office et simplifie grandement votre travail

  • Activer l'édition par onglets et la lecture dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
  • Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, plutôt que dans de nouvelles fenêtres.
  • Augmente votre productivité de 50% et réduit le nombre de clics de souris pour vous chaque jour!
fond officetab
Say something here...
symbols left.
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    German · 4 days ago
    excelente, me sirvió mucho el Objeto. Uso para carpetas como archivos. Muchas gracias
  • To post as a guest, your comment is unpublished.
    Mike · 1 months ago
    Hi, This works great, would there be any chance that the folder name used when checking if a folder already exists is derived from a cell within the spreadsheet, say A2??

    I use a template spreadsheet which is updated automatically from another source, so cell A2 constantly changes which requires new folders being created in the same name.

    Also, could there be such a command which does the above but also saves the active spreadsheet in the found / created folder?

    Any hope? TIA
  • To post as a guest, your comment is unpublished.
    felipe · 7 months ago
    I'm running this macro, but in the step to create the folder, the process goes down.

    can you help me????


    'Comprobar si la carpeta existe

    Dim ruta As String
    Dim libro As String

    M = ActiveWorkbook.Name

    ruta = Application.Workbooks(M).Sheets("Diccionario").Range("B5").Value

    If Right(ruta, 1) <> "\" Then
    ruta = ruta & "\"
    End If
    If Dir(ruta, vbDirectory) <> vbNullString Then
    MsgBox "Folder exist, please continue"
    Else
    MsgBox "Folder doesn't exist"
    End If

    'Crea la carpeta que necesitas

    Dim fdObj As Object
    Dim folder As String

    folder = Application.Workbooks(M).Sheets("Dicionario").Range("B5").Value (here is where the process falls)

    Application.ScreenUpdating = False
    Set fdObj = CreateObject("Scripting.FileSystemObject")
    If fdObj.FolderExists(folder) Then
    MsgBox "Found it, pleace continue."
    Else
    fdObj.CreateFolder (folder)
    MsgBox "It has been created."
    End If
    Application.ScreenUpdating = True
  • To post as a guest, your comment is unpublished.
    Kyffer · 10 months ago
    Super Thanks!
  • To post as a guest, your comment is unpublished.
    Roger · 11 months ago
    Thanks Man, work amazing
  • To post as a guest, your comment is unpublished.
    Bengbeng · 1 years ago
    This is really helpful! thanks!
  • To post as a guest, your comment is unpublished.
    Kenneth · 1 years ago
    Great article. Just what I was looking for :)
  • To post as a guest, your comment is unpublished.
    Alok · 1 years ago
    It's reflecting an error @ fdObj.CreateFolder ("C:\Users\DT168\Desktop\Test folder")
    • To post as a guest, your comment is unpublished.
      skyyang · 1 years ago
      Hello, Alok,
      The above codes works well in my Excel workbook, the "C:\Users\DT168\Desktop\Test folder" path is my computer path, you should change the folder path to your own.
      Thank you!