IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBA Access Discussion :

Création d'un répertoire


Sujet :

VBA Access

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Mars 2020
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ressources humaines

    Informations forums :
    Inscription : Mars 2020
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Création d'un répertoire
    Bonjour,

    Je souhaite, via une macro VBA, créer un répertoire stocké dans une variable. Si le répertoire n'existe pas, il est créer, s'il existe, fin de la procèdure.

    J'ai bricolé le bout de code ci-dessous. quand je l'execute une 1er fois (cad quand le répertoire n'existe pas), il s'execute sans probl^me. Par contre, quand le répertoire existe, il s'arrête sur l'instruction MkDir. J'ai l'impression que le code ne respecte pas la condition. Est-ce que quelqu'un peut me dire ou je me suis planté ?

    Merci d'avance.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
     
    Private Sub Commande2_Click()
     
    Dim CheminDossier As String
    Dim Nouveaudossier As String
     
    Nouveaudossier = "\tot"
     
    CheminDossier = CurrentProject.Path & Nouveaudossier
     
        ' Vérifier si le répertoire existe
        If Dir(CheminDossier) <> "" Then
            ' Le répertoire existe déjà
            MsgBox "Le répertoire '" & CheminDossier & "' existe déjà.", vbExclamation, "Répertoire existant"
            Exit Sub ' Sortir de la procédure si le répertoire existe
        End If
     
        ' Créer le répertoire (uniquement si le répertoire n'existe pas)
        MkDir CheminDossier
     
        ' Afficher un message de confirmation
        MsgBox "Le répertoire '" & CheminDossier & "' a été créé avec succès.", vbInformation, "Répertoire créé"
     
    End Sub
    Pièce jointe 656634
    Fichiers attachés Fichiers attachés

  2. #2
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 015
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 015
    Points : 24 548
    Points
    24 548
    Par défaut
    Bonjour,

    Non tel que tu as "bricolé" le code ça respecte rigoureusement ce qui est décrit dans la documentation de la commande.

    Si tu fais un dir(quelquechose) et que quelquechose est un répertoire il te renvoi "". C'est normal.

    Si tu mets une virgule après quelquechose tu va t'apercevoir que la commande te propose des options. Il faut lui préciser que c'est un répertoire avec l'item correspondant.

    Cordialement,
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

  3. #3
    Membre chevronné
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    1 301
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 301
    Points : 1 900
    Points
    1 900
    Par défaut
    Hello,

    Je recommande plutôt de passer par FSO qui est plus parlant et plus versatile:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Public Sub Commande2_Click()
        Dim FSO As Scripting.filesystemobject
        Set FSO = CreateObject("Scripting.FileSystemObject")
     
        If (FSO.FolderExists(CheminDossier)) Then
            ' //Le répertoire existe déjà
        Else
            '// le répertoir n'existe pas
            FSO.CreateFolder CheminDossier
        End If
    End Sub

  4. #4
    Nouveau Candidat au Club
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Mars 2020
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ressources humaines

    Informations forums :
    Inscription : Mars 2020
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    Bonjour,

    Tout d'abord, merci à tous les deux. Petite précision, mon niveau VBA et à 1 sur un niveau allant jusqu'à 10 !


    Pour loufab :

    Merci pour ton explication. Effectivement, en ajoutant "vbDirectory" ca fonctionne !

    Pour deedolith :

    Merci, ca fonctionne nikel (à condition d'ajouter la "librairie" : Microsoft Scripting Runtine )
    Pour le coup, je vais m'instruire en lisant l'article suivant histoire de comprendre ce que je fais : https://warin.developpez.com/access/fichiers/
    D'apès l'introduction de l'article, cette commande offre plus de possibilité.

    A bientôt

Discussions similaires

  1. cration d'un fichier xml à partir d'une BDD
    Par noutazia20 dans le forum C#
    Réponses: 1
    Dernier message: 14/05/2008, 00h57
  2. Vs C++ 2005 Express - Cration de Variables globales
    Par Thonm dans le forum VC++ .NET
    Réponses: 13
    Dernier message: 28/07/2007, 22h34
  3. cration d'une subform
    Par jamjam19 dans le forum Oracle
    Réponses: 1
    Dernier message: 29/06/2006, 13h27
  4. probleme de cration de dossier
    Par la-breche dans le forum Windows XP
    Réponses: 2
    Dernier message: 26/05/2006, 17h05
  5. Cration d'un module de recherche
    Par cyberbiker dans le forum Access
    Réponses: 1
    Dernier message: 16/03/2006, 15h25

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo