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 :

savoir si le controle n'est pas renseigné


Sujet :

IHM

  1. #1
    Membre du Club
    Inscrit en
    Septembre 2007
    Messages
    77
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 77
    Points : 58
    Points
    58
    Par défaut savoir si le controle n'est pas renseigné
    J'ai un controle qui se nomme lstControle sous la forme d'une liste de choix du type SELECT ... FROM ... ORDER BY ...; et qui donne des valeurs à d'autres controles : lstControle.column(1),lstControle.column(2),...

    je veux créer une condition dans un code VB pour savoir si l'utilisateur a choisi une valeur pour ce controle, j'ai essayé
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     If IsNull([LstControle]) Or [LsControle] = "" Then
    mais j'obtiens une erreur : Type incompatible (erreur 13)

    comment je peux faire cette condition autrement ?

  2. #2
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 656
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 656
    Points : 34 368
    Points
    34 368
    Par défaut
    bonjour,
    peut-être en ajoutant un .value ou un .text ?

  3. #3
    Invité
    Invité(e)

  4. #4
    Membre du Club
    Inscrit en
    Septembre 2007
    Messages
    77
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 77
    Points : 58
    Points
    58
    Par défaut
    je me suis inspirée de ce message sauf que je fais apparaitre dans une msgbox la liste des champs non remplis.
    En fait, si je mets :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    If IsNull([LstControle].Text) Or [LstControle].Text = "" Then
       strmsg = strmsg & vbCrLf & vbTab & "- Controle 1"
       End If
    l'erreur est "objet requis"

    si je mets
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    If IsNull(Me.[LstControle].Text) Or Me.[LstControle].Text = "" Then
       strmsg = strmsg & vbCrLf & vbTab & "- Controle 1"
       End If
    l'erreur est "utilisation incorrecte de l'objet Me". je pense aussi que ça a un lien avec le fait que cette fonction appartient à un module et pas au code VB d'un formulaire.

  5. #5
    Invité
    Invité(e)
    Par défaut
    Re

    La lecture de cet article de Loufab : http://loufab.developpez.com/appelformulaire/
    Te permettra de connaitre la syntaxe à utiliser pour faire appel aux contrôles de ton formulaire.

    Starec

  6. #6
    Membre du Club
    Inscrit en
    Septembre 2007
    Messages
    77
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 77
    Points : 58
    Points
    58
    Par défaut
    ce module va s'appliquer à différents formulaires, et j'ai donné le même nom au contrôle dans les différents formulaires pour pouvoir utiliser le même module partout.

    je dois donc utiliser Application.Screen.ActiveForm.Name

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    TTT = Application.Screen.ActiveForm.Name
       If IsNull(Forms.TTT.[LstControle].Text) Or Forms.TTT.[LstControle].Text = "" Then
    cette fois l'erreur est "propriété non gérée par l'objet"

  7. #7
    Membre du Club
    Inscrit en
    Septembre 2007
    Messages
    77
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 77
    Points : 58
    Points
    58
    Par défaut
    L'erreur vient de la façon d'appeler le contrôle dans le module :
    Forms.[TTT].[LstControle], ça ne marche pas. alors que TTT me donne bien le nom de mon formulaire.

    est-ce que ça peut venir du fait qu'il y ait des espaces dans le nom du formulaire ? (je ne connaissais pas cette règle quand j'ai commencé à concevoir la base, et maintenant que la base est grosse, j'ai pas très envie de changer le nom du formulaire)

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 12/05/2014, 16h05
  2. Réponses: 6
    Dernier message: 29/04/2010, 06h54
  3. savoir si un plugin n'est pas installé ?
    Par darkbob dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 29/06/2007, 18h17
  4. Savoir si un controle existe (n'est pas null)
    Par Orangina dans le forum C++Builder
    Réponses: 9
    Dernier message: 24/04/2006, 14h13

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