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

VB 6 et antérieur Discussion :

[VB6]Comment savoir si un répertoire existe


Sujet :

VB 6 et antérieur

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 5
    Points : 3
    Points
    3
    Par défaut [VB6]Comment savoir si un répertoire existe
    bonjour voilà je sais qu'une fonction existe pour vérifier si un fichier existe à partir de son chemin.
    Là je voudrai effectuer la même démarche sauf que je veus savoir si un répertoire existe car il n'y a pas forcément de fichiers dedans
    merci d'avance
    Bob Morane contre tout chacal aventurier pour le php!

  2. #2
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 42
    Points : 37
    Points
    37
    Par défaut
    et si tu fais un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if Dir(tonRepertoire & "\*.*", vbHidden) <>"" then

  3. #3
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 637
    Points : 66 661
    Points
    66 661
    Billets dans le blog
    1
    Par défaut
    Et si le répertoire existe mais qu'il est vide ??? que te retourneras ton dir ?
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 42
    Points : 37
    Points
    37
    Par défaut
    il me retourne vide aussi !

    Bien vu. je cherche autre chose alors

  5. #5
    Membre habitué
    Inscrit en
    Mai 2002
    Messages
    163
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 163
    Points : 173
    Points
    173
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
        Dim fs As Scripting.FileSystemObject
     
        Set fs = New Scripting.FileSystemObject
     
        ' test si le repertoire existe
        If Not fs.FolderExists(chemin) Then
             '  création du repertoire si besoin
             fs.CreateFolder (chemin)
        End If
     
        Set fs = Nothing
    bhaal76
    La théorie, c'est quand on sait tout et que rien ne fonctionne.
    La pratique, c'est quand tout fonctionne et que personne ne sait pourquoi.
    Ici, nous avons réuni théorie et pratique : Rien ne fonctionne... et personne ne sait pourquoi !
    (Albert Einstein)

  6. #6
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 5
    Points : 3
    Points
    3
    Par défaut
    c'est sympa ton code mais excuse moi de mon ignorance mais qu'est ce que veus dire?
    Merci d'avance
    Bob Morane contre tout chacal aventurier pour le php!

  7. #7
    Membre habitué
    Inscrit en
    Mai 2002
    Messages
    163
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 163
    Points : 173
    Points
    173
    Par défaut
    je déclare fs comme un objet Scripting.FileSystemObject, puis je l'instancie

    je dois donc le détruire quand je n'en n'ai plus besoin, d'ou le :
    set fs = nothing

    ps : pour utillisé l'objet "Scripting.FileSystemObject", tu doit ajouter a ton projet la référence a "Ms Scripting runtime"


    bhaal76
    La théorie, c'est quand on sait tout et que rien ne fonctionne.
    La pratique, c'est quand tout fonctionne et que personne ne sait pourquoi.
    Ici, nous avons réuni théorie et pratique : Rien ne fonctionne... et personne ne sait pourquoi !
    (Albert Einstein)

  8. #8
    Candidat au Club
    Inscrit en
    Juin 2003
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Juin 2003
    Messages : 5
    Points : 4
    Points
    4
    Par défaut
    autrement du bourrin qui marche :
    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
    rep = Dir(repertoire & "\*", vbNormal Or vbHidden Or vbDirectory Or vbArchive Or vbSystem)
    ' j'avoue j'en fais un peu trop
     Do While rep <> ""
             If rep <> ".." Then
                If rep <> "." Then
                        ' on ne veut pas les repertoires . et ..
                   If (GetAttr(repertoire & "\" & rep) And vbDirectory) = vbDirectory Then
                        ' verification que c'est bien un repertoire
     
    ' le traitement que tu veux faire
     
                   end if
               end if
            end if
    rep=dir
    loop

  9. #9
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 5
    Points : 3
    Points
    3
    Par défaut
    merci pour le code bhaal76 seulement je ne trouve pas le composan "Ms Scripting runtime"
    Bob Morane contre tout chacal aventurier pour le php!

  10. #10
    Membre à l'essai
    Inscrit en
    Juillet 2003
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 9
    Points : 10
    Points
    10
    Par défaut
    Slt pour le composant Ms Scripting Runtime tu va dans le menu projet,
    tu cliques sur references et le nom complet est :

    Microsoft Scripting Runtime

    Voilà !
    Tant qu'il y aura des solutions, il n'y aura pas de problèmes...

  11. #11
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 5
    Points : 3
    Points
    3
    Par défaut
    Merci tout le monde cettte petite fonction , fonctionne très bien
    Encore merci à tous décidément ce forum est tout ce qu'il y a de plus génial
    Bob Morane contre tout chacal aventurier pour le php!

  12. #12
    Membre à l'essai
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Octobre 2015
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2015
    Messages : 30
    Points : 16
    Points
    16
    Par défaut
    Citation Envoyé par bhaal76 Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
        Dim fs As Scripting.FileSystemObject
     
        Set fs = New Scripting.FileSystemObject
     
        ' test si le repertoire existe
        If Not fs.FolderExists(chemin) Then
             '  création du repertoire si besoin
             fs.CreateFolder (chemin)
        End If
     
        Set fs = Nothing
    bhaal76

    Message d'erreur :
    fin d'instruction , ligne 1, caractère 8

  13. #13
    Membre à l'essai
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Octobre 2015
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2015
    Messages : 30
    Points : 16
    Points
    16
    Par défaut
    Citation Envoyé par cerkyr Voir le message
    Message d'erreur :
    fin d'instruction , ligne 1, caractère 8
    Reprise sur un autre forum (test avec succès) :

    --
    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
    '*** Déclaration des variables d'environnement
    Set fso = WScript.CreateObject("Scripting.FileSystemObject")
     
    Dim dossier : dossier = "test"
    Dim repSOURCE : repSOURCE = "d:\"
    Dim repDESTINATION : repDESTINATION = "d:\data\windows\"
    Dim repVERIF : repVERIF = repDESTINATION & dossier
     
    '*** On met une condition pour vérifier l'existance du dossier contenu dans la variable "repVERIF".
    If fso.FolderExists(repVERIF) Then
            wscript.echo " [  ] Le dossier est déjà présent!!!"
        Else
    '*** Si le répertoire n'existe pas, celui-ci sera crée.
            fso.CreateFolder(repDESTINATION & dossier)
            wscript.echo " [OK] Le dossier " & repDESTINATION & dossier & " à été créer."
    End If
     
    '*** Destruction des objets
    Set fso = Nothing
    --

  14. #14
    Membre extrêmement actif
    Homme Profil pro
    aucune
    Inscrit en
    Avril 2016
    Messages
    7 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 82
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Avril 2016
    Messages : 7 563
    Points : 12 422
    Points
    12 422
    Par défaut
    Bonjour
    Hé bé !
    La fonction Dir de VB6 est efficace, native, légère et suffit.
    Elle ne retourne pas "" si le dossier est vide, à condition toutefois de l'utiliser comme il se doit
    Exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MsgBox Dir("D:\titi", vbDirectory)
    retournera "titi" si ce dossier existe et "" s'il n'existe pas.
    Voilà tout !
    Je n'accepte pas de demande d' "amitié" individuelle. Tout développeur est pour moi un ami.
    Je n'ouvre AUCUN classeur tiers (avec ou sans macro ******). Ne m'en proposez donc pas .

    ****** : Non, non ... un classeur .xlsx ne "peut" par exemple et entre autres pas contenir un activex (de surcroît invisible) , "bien sûr" ...

    Il est illusoire de penser que l'on saurait exprimer valablement et précisément en un langage (rigide) de développement ce que l'on peine à exprimer dans le langage naturel, bien plus souple.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 7
    Dernier message: 15/04/2011, 15h19
  2. Comment savoir si une zone de texte existe dans un formulaire ?
    Par jejeman dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 28/06/2007, 11h55
  3. [VB6] comment savoir si la commande shell est terminée ?
    Par ghyscharlotte dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 30/07/2003, 19h12
  4. [VB6] Comment accéder a la visionneuse d'API ??
    Par Argonz dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 13/11/2002, 12h57
  5. Réponses: 4
    Dernier message: 10/09/2002, 17h09

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