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 :

Erreur de variable


Sujet :

VB 6 et antérieur

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 114
    Par défaut Erreur de variable
    Bonsoir,

    J'ai crée un mini programme tiré d'un livre mais lorsque je l'éxécute un message d'erreur apparrait concernant une variable.
    voici le code :

    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
    Private Sub cmdCalcpay_Click()
        Dim intHoursWorked As Integer
        Dim sngRate As Single, sgnTaxRate As Single
        Dim curTaxes As Currency, curGrossPay As Currency
        Dim curNetPay As Currency
     
        intHoursWorked = 40
        sngRate = 7.8
        sngTaxRate = 0.42
     
        curGrossPay = intHoursWorked * sngRate
        curTaxes = sngTaxRate * curGrossPay
        curNetPay = curGrossPay - curTaxes
     
        lblGrossPay.Caption = curGrossPay
        lblTaxes.Caption = curTaxes
        lblNetPay.Caption = curNetPay
    End Sub

  2. #2
    Membre Expert Avatar de OhMonBato
    Homme Profil pro
    Inscrit en
    Mars 2007
    Messages
    2 660
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2007
    Messages : 2 660
    Par défaut
    Et donner le message d'erreur en question, ca reste du domaine du possible ?

  3. #3
    Expert confirmé
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 140
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 140
    Par défaut
    Si ton formulaire commence par Option Explicit

    il te manque la declartion de la variable sngTaxRate
    :whistle:pourquoi pas, pour remercier, un :plusser: pour celui/ceux qui vous ont dépannés.
    saut de ligne
    OOOOOOOOO👉 → → Ma page perso sur DVP ← ← 👈

  4. #4
    Modérateur

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 722
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 722
    Par défaut
    Bonjour

    Pour compléter ce que dit ProgElecT avec option explicit,
    tu as déclaré sgnTaxRate et tu utilises sngTaxRate.
    A+, Hervé.
    Traductions d'articles :
    La mémoire en .NET - Qu'est-ce qui va où ?
    Architecture DAL de haute performance et DTO ; Version C# : Partie 1,Partie 2,Partie 3 — Version VB.NET : Partie 1,Partie 2,Partie 3
    N'hésitez pas à consulter la FAQ VB.NET, le cours complet de Philippe Lasserre et tous les cours, articles et tutoriels.

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 114
    Par défaut
    Citation Envoyé par rv26t
    Bonjour

    Pour compléter ce que dit ProgElecT avec option explicit,
    tu as déclaré sgnTaxRate et tu utilises sngTaxRate.
    A+, Hervé.
    J'ai rectivié cette erreur, mais je voulais savoir à quoi sert optio explicit?

    Sinon le message d'erreur est compile error : syntax error
    et il me surligne cette ligne : sngRate = 7,8

    C'est bon j'ai trouvé mon erreur, il fallait juste rectifié l'erreur de frappe sur la variable merci à vous.

  6. #6
    Membre Expert Avatar de OhMonBato
    Homme Profil pro
    Inscrit en
    Mars 2007
    Messages
    2 660
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2007
    Messages : 2 660
    Par défaut
    "Option Explicit" te force à déclarer tes variables.
    Je recommande vivement son utilisation, ton cas est une illustration de son utilité.
    Imagine ne pas avoir "Option Explicit", tu affecte une valeur à ta variable sngTruc et plus tad tu fais une opération avec sgnTruc, qui va valoir 0, le resultat ne pva donc pas correspondre à ce que tu attends et tu peux passer des heures à te rendre compte que tout cela est du à une misérable faute de frappe.

    Avec option explicit, si tu as dimensionné sngTruc, si plus tard le prog voit sgnTruc, il va te dire que la variable n'est pas déclarée, ce qui attire quand meme un peu l'attention.

    C'est un avantage "basique" de option epxlicit mais qui n'est pas ininteressant. Autrement, cela t'évite d'avoir plusieurs variables de meme nom et avec des portées qui peuvent se croiser, ce qui rend le code quasi incompréhensible rapidement. Si tu ne sais pas ce qu'est la portée d'une variable, je te recommande de te renseigner la dessus, le temps passé pour cela ne sera pas perdu et peux t'aider à résoudre bien des problèmes

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

Discussions similaires

  1. [Tableaux] Message erreur: undefined variable
    Par arti2004 dans le forum Langage
    Réponses: 9
    Dernier message: 23/05/2006, 14h31
  2. [VBA-E]erreur 91: variable objet ou variable de bloc With...
    Par cdk dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 07/03/2006, 14h19
  3. erreur de variable
    Par bobic dans le forum ASP
    Réponses: 8
    Dernier message: 15/11/2005, 11h20
  4. erreur déclaration variables
    Par bobic dans le forum ASP
    Réponses: 4
    Dernier message: 13/09/2005, 10h11
  5. Réponses: 1
    Dernier message: 19/08/2005, 12h33

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