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 :

Perte de valeurs d'une function à une autre


Sujet :

VBScript

  1. #1
    Expert confirmé
    Avatar de Baptiste Wicht
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    7 431
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2005
    Messages : 7 431
    Par défaut Perte de valeurs d'une function à une autre
    Bonjour,

    J'ai un petit problème avec VBS que j'ai bien de la peine à comprendre.

    Voilà le code :

    Dans la fonction getDate() :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    If serveur(5).AtEndOfStream Then
         openNextFile(serveur)
         WScript.echo(serveur(6))
    End If
    Dans la procédure openNextFile(serveur) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Sub openNextFile(ByRef serveur)
            If serveur(3) = UBound(serveur(4)) Then
                    serveur(6) = 1
            Else
                    serveur(3) = serveur(3) + 1
                    Set serveur(5) = fso.OpenTextFile(serveur(4)(serveur(3)), ForReading, true)
            End If
     
            WScript.echo (serveur(6))
    End Sub
    Quand je fais ça, le premier echo (dans openNextFile), me donne bien 1, mais ensuite, une fois revenu dans getDate, ca me donne 0

    Je pense que ça doit être une histoire de passage par valeur/référence, mais je passe bien par référence dans ma procédure openNextFile...

    Quelqu'un aurait une idée de pourquoi est-ce que je perds ma modification ?

    Merci

  2. #2
    Expert éminent


    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
    Par défaut
    Bonjour Baptiste...

    des parenthèses en trop ... non ..?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    ...
    openNextFile serveur
    ...

  3. #3
    Expert confirmé
    Avatar de Baptiste Wicht
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    7 431
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2005
    Messages : 7 431
    Par défaut
    C'était juste ça

    Ca marche tout de suite mieux en effet...

    Ca change quoi de mettre les parenthèses ou pas ? Si je mets pas les parenthèses, j'arrive pourtant bien à récupérer les valeurs contenues dans le tableau serveur...

    Merci

  4. #4
    Expert éminent


    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
    Par défaut
    Citation Envoyé par Baptiste Wicht Voir le message
    ...
    Ca change quoi de mettre les parenthèses ou pas ? Si je mets pas les parenthèses, j'arrive pourtant bien à récupérer les valeurs contenues dans le tableau serveur...
    tiens ... c'est du VBA .. mais bon c'est avant tout du VB et c'est le même principe : II-A-3-a. Le passage par Valeur

  5. #5
    Expert confirmé
    Avatar de Baptiste Wicht
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    7 431
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2005
    Messages : 7 431
    Par défaut
    Merci bien bbil, j'ai bien compris le concept, cette fois, mais c'est quand même lourd d'avoir 2 possibilités pour faire la même chose qui marchent des fois et des fois pas

    Mais bon...

    Merci bien

  6. #6
    Expert éminent


    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
    Par défaut
    Citation Envoyé par Baptiste Wicht Voir le message
    Merci bien bbil, j'ai bien compris le concept, cette fois, mais c'est quand même lourd d'avoir 2 possibilités pour faire la même chose qui marchent des fois et des fois pas

    Mais bon...

    Merci bien
    oui peu être que VB est trop souple ... la règle c'est si ma fonction/procédure doit renvoyer un résultat je met des parenthèse :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    monresultat = mafonction(sesparamétres)
    si elle ne doit pas renvoyer de résultat je ne met pas de parenthèse ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    mafonction sesparamétres
    comme cela ça marche à tous les coups

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

Discussions similaires

  1. [Vxi3] Requête Valeurs sans occurrences d'une table à l'autre
    Par DamienBC dans le forum Designer
    Réponses: 1
    Dernier message: 16/12/2013, 15h32
  2. Soucis avec une FUNCTION, une idée ? :)
    Par Cvbdev dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 01/06/2011, 15h03
  3. [XL-2003] garder une valeur de variable d'une procédure à une autre
    Par mathioustone dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 04/03/2011, 16h24
  4. Réponses: 21
    Dernier message: 20/09/2009, 10h50
  5. affectation d'une variable à une function
    Par grospatapouf dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 16/12/2008, 11h40

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