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]Bug sur les boucles for.


Sujet :

VBScript

  1. #1
    Membre éprouvé
    Avatar de méphistopheles
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 551
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 551
    Points : 1 220
    Points
    1 220
    Par défaut [VBS]Bug sur les boucles for.
    Bonjours.

    je me suis récement mis au VBS (j'ai eu du mal, trop habitué au VB6).

    voici un petit code d'entrainement, le but êtant de sortir un mot différent à l'arrivée.

    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
    35
    36
    37
    38
    39
    40
    41
    <HTML>
    <HEAD>
    <SCRIPT language="VBscript">
    <!--
    Option explicit
    Sub ok_Onclick
    dim Entre
    dim listN 
    dim numero 
    dim rep
    dim nums(32)
    rep=Inputbox("Entrez votre Pseudo")
    Entre=""
    numero="1,2,8,3,14,7,14,13,3,1,14,22,17,22,17,22,17,22,17,22, 17,22,17,22,17,22,17,22,17,22,17,22"
    listN ="1"
    if replace(ListN,rep,"")<>listN then
            rep=Inputbox("Entrez le mot de passe")
            rep=replace(rep," ","")
            if len(rep)<32 then
                    msgbox mid(rep,len(rep),1) & " ?"
                    for i= 1 to len(rep)
                            nums(i-1)=mid(rep,i,1)
                    next
                    msgbox "ok"
                    for i= 0 to 32
                            Entre=Entre & nums(val(split(numero,",")(i)))
                    next
            end if
    end if
    msgbox Entre
    End Sub
    -->
    </SCRIPT>
    </HEAD>
    <BODY>
    <FORM name="commande">
    <INPUT name="ok" type="button"
    value="Cliquez ici">
    </FORM>
    </BODY>
    </HTML>
    Malheuresement, il bloque sur cette partie(enfin je pense, vu qu'il m'affiche la msgbox de code juste avantetr pas celle après):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    for i= 1 to len(rep)
            nums(i-1)=mid(rep,i,1)
    next
    Si vous avez une idée...

    Merci
    Méphistophélès
    Si la solution ne résout pas votre problème, changez le problème...
    Cours et tutoriels C++ - FAQ C++ - Forum C++.

  2. #2
    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
    Salut satan,

    Je comprends pas
    for i= 1 to len(rep)
    nums(i-1)=mid(rep,i,1)
    next
    là, tu prends que des bouts de nombre quand ils ont deux chiffres, c'est ce que tu veux ?

    A+

  3. #3
    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
    Je reviens.

    pour me faciliter la tâche, je travaillerais sur un tableau :

    numero = Array(1, 2, 8, 3, 14, 7, 14, 13, 3, 1, 14, 22, 17, 22, 17, 22, 17, 22, 17, 22, 17, 22, 17, 22, 17, 22, 17, 22, 17, 22, 17, 22)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    For i = 0 To UBound(numero)
        'tcétéra...
    Next
    Tu dis, mais pas à moi, je m'en vais

    A+

    edit
    Bonsoir jemefe

  4. #4
    Inactif  
    Avatar de jmfmarques
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    3 784
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 3 784
    Points : 4 674
    Points
    4 674
    Par défaut
    Moi, je vois que celà passe dans un tableau les caractères, un par un, de la chaîne traitée.
    Celà ne devrait pas provoquer d'erreur, sauf si ton tableau est déclaré comme d'un type différent de string, ou que les dimensions de ton tableau sont trop petites pour recevoir tous les caractères !

  5. #5
    Membre éprouvé
    Avatar de méphistopheles
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 551
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 551
    Points : 1 220
    Points
    1 220
    Par défaut
    on ne déclare pas les types en vbs...

    sinon, ouskel'nor, je découpe la deuxième chaine entrée en petits bouts que je stoques dans le tableau nums puis j'associe à chaque nombre de mon string la lettre stoquée dans l'index corespondant.
    En effet, ce serait peut-être préfférable de faire un array.

    cependant, le problème vient de la boucle: en effet, je n'arrive pas à lancer la boucle même vide...

    je pense que c'est un problème spécifiqe au vbs....

    salut
    Méphistophélès
    Si la solution ne résout pas votre problème, changez le problème...
    Cours et tutoriels C++ - FAQ C++ - Forum C++.

  6. #6
    Membre éprouvé
    Avatar de méphistopheles
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 551
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 551
    Points : 1 220
    Points
    1 220
    Par défaut


    Ce n'étais pas un problême de VBscript: j'avais mis option explicit et j'avais oublié de déclarer les variables.

    par contre, on dirais qu'il n'accepte pas la fonction Val.

    il y as un moyen de remplacer?

    merci
    Méphistophélès
    Si la solution ne résout pas votre problème, changez le problème...
    Cours et tutoriels C++ - FAQ C++ - Forum C++.

  7. #7
    Expert confirmé
    Avatar de pc75
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    3 662
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2004
    Messages : 3 662
    Points : 4 047
    Points
    4 047
    Par défaut
    Bonjour,

    Citation Envoyé par méphistopheles
    par contre, on dirais qu'il n'accepte pas la fonction Val.

    il y as un moyen de remplacer?

    merci
    Tu as les fonctions cInt(), cDbl(), cLng() ...

  8. #8
    Membre éprouvé
    Avatar de méphistopheles
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 551
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 551
    Points : 1 220
    Points
    1 220
    Par défaut
    Merci, je ne les conaissais pas

    sujet
    Méphistophélès
    Si la solution ne résout pas votre problème, changez le problème...
    Cours et tutoriels C++ - FAQ C++ - Forum C++.

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

Discussions similaires

  1. question sur les boucles for
    Par rob1son76 dans le forum Excel
    Réponses: 2
    Dernier message: 13/01/2010, 13h02
  2. [MySQL] problème sur une boucle for
    Par leclone dans le forum PHP & Base de données
    Réponses: 13
    Dernier message: 28/12/2006, 10h33
  3. Réponses: 3
    Dernier message: 20/09/2006, 22h35
  4. [VBA-E]PB sur une boucle for each next
    Par rond24 dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 31/07/2006, 15h47
  5. [VBS][Débutant] Problème syntaxe boucle For
    Par _alex_ dans le forum VBScript
    Réponses: 2
    Dernier message: 26/07/2006, 14h26

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