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

VBScript Discussion :

[VBS] Tester plusieurs répertoire avec un seul If


Sujet :

VBScript

  1. #1
    Inactif
    Inscrit en
    Janvier 2006
    Messages
    202
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 202
    Points : 70
    Points
    70
    Par défaut [VBS] Tester plusieurs répertoire avec un seul If
    Bonjour, je suis entrain de créer un VBS pour vérifier l'éxistances de certains répertoires sur mon disuqe dur, je commence avec ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Var1= "C:\Program Files\ut\1"
    Var2= "C:\Program Files\ut\2"
    '
    Set objFSO = CreateObject("Scripting.FileSystemObject")
    '
    If objFSO.FolderExists(Var1) Then
    Wscript.Echo "Le répertoire Var1 exite."
    Wscript.Echo "Le répertoire Var2 exite."
    Else
    Wscript.Echo "Le répertoire Var1 n'exite pas."
    Wscript.Echo "Le répertoire Var2 n'exite pas."
    End If
    '
    Voila j'aimerai tester ses deux répertoires dans un seul IF mais la sa plante, quelqu'un aurait-il une solution ?

  2. #2
    Membre chevronné
    Avatar de sovo
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mars 2004
    Messages
    1 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 389
    Points : 1 788
    Points
    1 788
    Par défaut
    tu peut utiliser une boucle "tant que" (while). je croit que la tu n'aura qu'a faire un seul "if".

  3. #3
    Inactif
    Inscrit en
    Janvier 2006
    Messages
    202
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 202
    Points : 70
    Points
    70
    Par défaut
    Bonjour sovo , vous savez où je peut trouver un exemple ?

  4. #4
    Membre chevronné
    Avatar de sovo
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mars 2004
    Messages
    1 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 389
    Points : 1 788
    Points
    1 788
    Par défaut
    ok voila un petit exemple.

    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
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
     
       dim i as integer
       'Tout d'abord tu met le chemin de tes fichier dans un tableau.
       dim FilePath(1 to 10) as string    'Ceci te permet d'avoir 10 fichiers mais tu peut redimensionner ton tableau avec l'instruction "ReDim"
     
       FilePath(1)="C:\Program Files\ut\1" 
       FilePath(2)="C:\Program Files\ut\2"
     
       'Et maintenant tu peut commencer a chercher tes fichiers
     
       Set objFSO = CreateObject("Scripting.FileSystemObject") 
       i=0 
     
       'Premiere solution : avec le "while"
       while i<=10 
             If objFSO.FolderExists(FilePath(i)) Then 
                   Wscript.Echo "Le répertoire FilePath(i) exite." 
             Else 
                   Wscript.Echo "Le répertoire FilePath(i) n'exite pas." 
             End If 
     
             i=i+1
       wend
     
       'Deuxieme solution: avec le "for"
       for i=1 to 10
             If objFSO.FolderExists(FilePath(i)) Then 
                   Wscript.Echo "Le répertoire FilePath(i) exite." 
             Else 
                   Wscript.Echo "Le répertoire FilePath(i) n'exite pas." 
             End If 
     
             i=i+1
       next
    je croit que ca devrais marche, je n'ai pas fait de test mais logiquement c'est bon.

  5. #5
    Inactif
    Inscrit en
    Janvier 2006
    Messages
    202
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 202
    Points : 70
    Points
    70
    Par défaut
    Merci beaucoup

    Se script renvoie une erreur à la ligne 1, Fin d'instruction attendu.

  6. #6
    Inactif
    Inscrit en
    Janvier 2006
    Messages
    202
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 202
    Points : 70
    Points
    70
    Par défaut
    Au faite j'ai regarder votre profil pour prendre votre adresse msn, j'ai cliquer sur me bouton msn et je suis tomber sur mon profile msn, s'est normale ?

  7. #7
    Membre chevronné
    Avatar de sovo
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mars 2004
    Messages
    1 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 389
    Points : 1 788
    Points
    1 788
    Par défaut
    Citation Envoyé par Edoxituz
    Se script renvoie une erreur à la ligne 1, Fin d'instruction attendu
    Deja je ne fait pas du VBS, ce script est inspirer d'une logique. Mais essai de revoir ton code "avant et apres" le script, peut etre que tu n'as pas fait un truc que tu aurais du faire. Si possible donne nous le code et ceux qui s'y connaisse en VBS pouront te donner une reponse.


    Citation Envoyé par Edoxituz
    Au faite j'ai regarder votre profil pour prendre votre adresse msn, j'ai cliquer sur me bouton msn et je suis tomber sur mon profile msn, s'est normale ?


    je viens d'essayer de me connecter (depuis un tres long moment deja), et il m'annonce que vu le fait que j'ai passer un long moment sans avoir avert mon compte alors il a ete fermer.

    Alors il est tres fort probable que tu ais resuperer mon identifiant une fois qu'il a ete supprimer. Voila ca peut s'expliquer comme ca.

  8. #8
    Inactif
    Inscrit en
    Janvier 2006
    Messages
    202
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 202
    Points : 70
    Points
    70
    Par défaut
    Ton compte msn n'a pas été suprimer mais juste désactiver.

    Ben mon code s'est sa:
    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
    25
    26
    27
    28
    29
    30
    31
    32
    33
       dim i as integer 
       'Tout d'abord tu met le chemin de tes fichier dans un tableau. 
       dim FilePath(1 to 10) as string    'Ceci te permet d'avoir 10 fichiers mais tu peut redimensionner ton tableau avec l'instruction "ReDim" 
     
       FilePath(1)="C:\Program Files\ut\1" 
       FilePath(2)="C:\Program Files\ut\2" 
     
       'Et maintenant tu peut commencer a chercher tes fichiers 
     
       Set objFSO = CreateObject("Scripting.FileSystemObject") 
       i=0 
     
       'Premiere solution : avec le "while" 
       while i<=10 
             If objFSO.FolderExists(FilePath(i)) Then 
                   Wscript.Echo "Le répertoire FilePath(i) exite." 
             Else 
                   Wscript.Echo "Le répertoire FilePath(i) n'exite pas." 
             End If 
     
             i=i+1 
       wend 
     
       'Deuxieme solution: avec le "for" 
       for i=1 to 10 
             If objFSO.FolderExists(FilePath(i)) Then 
                   Wscript.Echo "Le répertoire FilePath(i) exite." 
             Else 
                   Wscript.Echo "Le répertoire FilePath(i) n'exite pas." 
             End If 
     
             i=i+1 
       next

  9. #9
    Membre chevronné
    Avatar de sovo
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mars 2004
    Messages
    1 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 389
    Points : 1 788
    Points
    1 788
    Par défaut
    beh la je ne voit pas trop le pb (comme je te l'ai dit je ne code pas en VBS). c'est tout bete, mais essai de remplacer le "10" (nombre de fichier que tu as) par le nombre exacte de fichier que tu as (dans ton exemple "2"). je croit que le probleme doit venir de la (mais pas sur).

    Et puis oui, justement le compte a ete desactiver. mais comme je n compte plus l'activer, alors je prefere dire supprimer.

  10. #10
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    Manque un exit for si c'est bon et peut-être même si c'est pas bon... Non ?

    Juste une idée comme ça

  11. #11
    Membre chevronné
    Avatar de sovo
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mars 2004
    Messages
    1 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 389
    Points : 1 788
    Points
    1 788
    Par défaut
    je ne croit pas qu'un exit for soit necessaire vu qu'il veux afficher a l'ecran l'etat d'xistance des fichiers : le fichier existe ou le fichier n'existe pas.

    je me dit plutot que le probleme viendrais peut etre du fait que je parcours 10 element du tabeau pourtant il n'y en a que 2 (suivant l'exemple). alors il ne va rien trouver comme chemin dans les 8 autres. Ca a l'air bete, mais c'est une idee.

  12. #12
    Inactif
    Inscrit en
    Janvier 2006
    Messages
    202
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 202
    Points : 70
    Points
    70
    Par défaut
    sovo >>> J'ai remplacer 10 par le nombre exat de fichier sa ne change rien.

    ouskel'n'or >>> Bonjour, je ne sais pas ou mettre sa.

  13. #13
    Membre chevronné
    Avatar de sovo
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mars 2004
    Messages
    1 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 389
    Points : 1 788
    Points
    1 788
    Par défaut
    autre supposition (enfait erreur lors de l'ecriture du code).

    a cette ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Set objFSO = CreateObject("Scripting.FileSystemObject") 
    i=0
    remplace "0" par "1", comme ceci.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Set objFSO = CreateObject("Scripting.FileSystemObject") 
    i=1

  14. #14
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    Sovo t'a répondu en te conseillant de mettre le nombre exact de fichier.
    Tu n'as pas besoin de l'exit for dans ce cas là
    Je cherche une idée...

    A+

  15. #15
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 040
    Points
    20 040
    Par défaut
    j'ai pas compris tous ce que tu voulais faire ... mais si tu ve qu'un seul IF ... tu peu utiliser le et : AND ///
    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
     
    Var1= "C:\Program Files\ut\1"
    Var2= "C:\Program Files\ut\2"
     
     
    Set objFSO = CreateObject("Scripting.FileSystemObject")
    '
    If  objFSO.FolderExists(Var1) and _ 
        objFSO.FolderExists(Var2 ) Then
    Wscript.Echo "Les répertoires Var1  et var 2exite."
     
    Else
    Wscript.Echo "Au moins un des répertoire var1 et var2 n'existe pas !"
     
    End If

  16. #16
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    j'ai pas compris tous ce que tu voulais faire ...
    +1

  17. #17
    Inactif
    Inscrit en
    Janvier 2006
    Messages
    202
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 202
    Points : 70
    Points
    70
    Par défaut
    Bonjour sovo, et merci, j'ai remplacer 2 par 1, toujours pareille.

    Bonjour ouskel'n'or et merci.

    Bonjour bbil, et merci, ben se que je veut en faite s'est que le script indique quels répertoire existe et quel répertoire n'éxiste pas, votre code indique si au moin un répertoire n'existe pas mais ne dit pas le quel.

  18. #18
    Membre chevronné
    Avatar de sovo
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mars 2004
    Messages
    1 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 389
    Points : 1 788
    Points
    1 788
    Par défaut
    maintenant que je relis ton message d'erreur je remarque un truc :

    Citation Envoyé par Gestionnaire d'erreur
    erreur à la ligne 1, Fin d'instruction attendu.
    Si ton code n'est que celui la, alors ton erreur vient de la declaration de la variable i [dim i as integer], vu que c'est la premiere ligne (comme le dit ton message d'erreur). Alors je te conseille de jregarder encore la declaration des variables en VBS, celle la doit etre insuffisante.

  19. #19
    Inactif
    Inscrit en
    Janvier 2006
    Messages
    202
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 202
    Points : 70
    Points
    70
    Par défaut
    Merci du tuyo je vais essayer de voir sa.

  20. #20
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 040
    Points
    20 040
    Par défaut
    Citation Envoyé par Edoxituz
    Bonjour bbil, et merci, ben se que je veut en faite s'est que le script indique quels répertoire existe et quel répertoire n'éxiste pas, votre code indique si au moin un répertoire n'existe pas mais ne dit pas le quel.
    Ben alors ils faut faire un test par répertoire...? d'ou ils sortent tes répertoires ...? une liste ...?

Discussions similaires

  1. Tester plusieurs calculs avec try-catch
    Par saddamtohmto dans le forum MATLAB
    Réponses: 2
    Dernier message: 09/08/2007, 11h15
  2. Réponses: 2
    Dernier message: 11/04/2007, 12h14
  3. [VBS]Vider un répertoire avec la commande RUNAS
    Par Alphaz dans le forum VBScript
    Réponses: 3
    Dernier message: 20/06/2006, 17h43
  4. plusieurs tables avec un seul DBnavigator et DBGRID
    Par warrior dans le forum Bases de données
    Réponses: 8
    Dernier message: 07/06/2005, 08h12
  5. Plusieurs commandes avec 1 seule R-commande
    Par pouldo dans le forum Shell et commandes GNU
    Réponses: 6
    Dernier message: 01/04/2005, 18h44

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