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

IHM Discussion :

calcul sur des contrôles


Sujet :

IHM

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    199
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2005
    Messages : 199
    Points : 91
    Points
    91
    Par défaut calcul sur des contrôles
    Bonjour,

    dans un état j'ai mis un contrôle texte qui vient me calculer la différence entre un autre contrôle de l'état un un contrôle placé dans un sous état.

    Ca marche à peu près sauf que je n'ai pas toujours de contrôle dans le sous-état, il peut être vide et à ce moment là il me renvoit une erreur (ce qui parrait logique en même temps).

    Comment faire pour le forcer à me rendre une valeur ?

    NB. le Nz ne marche pas

    L'idée ensuite c'est que sur la valeur du contrôle il aille m'afficher des images avec le code suivant :

    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
    If Me.txt_calcul = 0 Then
            arrow1.Visible = False
            arrow2.Visible = True
            arrow3.Visible = False
     
    ElseIf Me.txt_calcul > 0 Then
            arrow1.Visible = True
            arrow2.Visible = False
            arrow3.Visible = False
     
    ElseIf Me.txt_calcul < 0 Then
            arrow1.Visible = False
            arrow2.Visible = False
            arrow3.Visible = True
     
    Else
            arrow1.Visible = False
            arrow2.Visible = False
            arrow3.Visible = False
     
    End If
    Le soucis c'est qu'avec ce code il me renvoit systématiquement une erreur de compatibilité de type, j'ai essayé plein de truc mais je retombe toujours sur la même erreur.
    J'ai donc supposé qu'il ne gérait pas les erreurs.

    merci

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Vous avez essayé :

    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
    If Me.txt_calcul.Value = 0 Then
            arrow1.Visible = False
            arrow2.Visible = True
            arrow3.Visible = False
        
    ElseIf Me.txt_calcul.Value > 0 Then
            arrow1.Visible = True
            arrow2.Visible = False
            arrow3.Visible = False
            
    ElseIf Me.txt_calcul.Value < 0 Then
            arrow1.Visible = False
            arrow2.Visible = False
            arrow3.Visible = True
     
    Else
            arrow1.Visible = False
            arrow2.Visible = False
            arrow3.Visible = False
     
    End If

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    199
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2005
    Messages : 199
    Points : 91
    Points
    91
    Par défaut
    Oui j'ai déjà essayé ça :-)

    Sinon j'ai fait quelques tests et je comprends l'erreur.

    En fait par défaut le typage va bien, il ne génère pas d'exception et tout va bien.

    Sauf que de temps en temps dans mon état, il manque un contrôle qui sert de base à la soustraction et à ce moment là il met erreur et là rien ne va plus.

    Donc il faut que je gère l'erreur et je ne sais pas comment faire.
    Un truc du style si contrôle 1 et 2 existe alors fait la soustraction dans le contrôle 3 sinon affiche 100

    vous avez une idée ?

    merci

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    199
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2005
    Messages : 199
    Points : 91
    Points
    91
    Par défaut
    Alors j'ai fait quelques recherche et voici le résultat...

    L'idée est d'abord de tester l'existence du contrôle et j'ai trouvé ce code qui doit pouvoir facilement se transposer pour un état :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Function ExistControl(ByVal frm As Form, ByVal ctlName As String) As Boolean
     'frm contient le nom du formulaire, ctlName contient le nom du formulaire
        On Error Resume Next
        If IsError(frm.Controls(ctlName).Tag) Then
            Err.Clear
            Exit Function
        Else
            ExistControl = True
        End If
    End Function
    Donc ce truc à l'air de renvoyer un vrai / faux.
    Comment à partir de là je pourrais l'intrégrer dans ma sub svp ?

    je ne sais pas du tout gérer les fonctions.

    merci

Discussions similaires

  1. [XL-2010] Boucle sur des contrôles d'une feuille de calcul
    Par Korleone dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 17/01/2011, 15h16
  2. Réponses: 12
    Dernier message: 02/01/2006, 22h13
  3. calcul sur des heures
    Par pascale86 dans le forum Access
    Réponses: 5
    Dernier message: 22/12/2005, 16h22
  4. calcul sur des cases à cocher
    Par karidrou dans le forum Access
    Réponses: 3
    Dernier message: 06/12/2005, 11h40
  5. Réponses: 4
    Dernier message: 15/12/2002, 04h19

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