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

VBA Access Discussion :

Récupérer la valeur d'une zone de texte [AC-2007]


Sujet :

VBA Access

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Toulouse 3
    Inscrit en
    Avril 2012
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

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

    Informations forums :
    Inscription : Avril 2012
    Messages : 31
    Par défaut Récupérer la valeur d'une zone de texte
    Bonjour, Rebonjour.

    Décidément en ce moment je suis confronté à pas mal de problèmes dont je ne trouve pas la solution.

    J'ai une zone de texte dans laquelle je saisi un mot.
    J'aimerais récupéré la valeur saisie dans une variable afin de tester si l'utilisateur a bien rentrer quelque chose dans la zone de texte (donc tester si la variable est vide ou pas) et ce lorsque l'on appui sur un bouton.

    Voici le code utilisé
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Public pn_a_modif As String 
    Private Sub bouton_ok_modif_Click()
     
    pn_a_modif = Me.PNaModifier.Value 'PNaModifier est le nom de la zone de texte
    If pn_a_modif Is Null Then MsgBox "erreur"
    Else
        'Ensemble d'instructions
    End If
    End Sub
    J'ai essayé avec les types String et Variant, et avec les conditions Is Null, = "", =0
    Dans tout les cas J'ai une erreur "Instruction Else sans If"...
    La variable contient bien une valeur lorsque j'écris quelque chose dans la zone de texte car je la teste avec une MsgBox.

    De plus l'ensemble d'instructions ne comprend pas d'erreur car je les textes à part et fonctionnent très.

  2. #2
    Membre confirmé
    Inscrit en
    Janvier 2005
    Messages
    152
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 152
    Par défaut
    Salut,

    Tu ne peux pas utiliser la vérification de la valeur Null comme ça: il y a une méthode IsNull:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    If IsNull(Forms!(...)![TextBox].Value) Or Forms!(...)![TextBox].Value = "" Then
        MsgBox "erreur"
    Else
        'blabla
    End If
    Ça t'aide?

  3. #3
    Membre chevronné
    Homme Profil pro
    Amateur
    Inscrit en
    Octobre 2010
    Messages
    205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Amateur

    Informations forums :
    Inscription : Octobre 2010
    Messages : 205
    Par défaut
    Et

    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
    Private pn_a_modif As Variant 'Si utiliser uniquement dans le module, autant le mettre en  private
    Private Sub bouton_ok_modif_Click()
        
    pn_a_modif = Me.PNaModifier.Value 'PNaModifier est le nom de la zone de texte
    
    If IsNull(pn_a_modif) Then 
    
    MsgBox "erreur"
    
    Else
    
        'Ensemble d'instructions
    
    End If
    
    End Sub

  4. #4
    Membre confirmé
    Inscrit en
    Janvier 2005
    Messages
    152
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 152
    Par défaut
    J'ajoute, pour pas qu'il y ait de confusion, que
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Forms!(...)![PNaModifier].Value
    est équivalent à Ça dépend de la structure de ta form (j'ai des forms imbriquées), mais par défaut ton écriture est mieux, je pense.



    PS: ah, bien, je connaissais pas IsEmpty()

  5. #5
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 410
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 410
    Par défaut
    Personnellement pour cela je ferai :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if isnull(Me.PNaModifier) or isempty(Me.PNaModifier) then
         Msgbox "Erreur"
       else
          'OK
    end if
    Si tu tiens à passer par une variable, il faut la typer 'variant' c'est le seul tyep que je connaisse qui accepte des nulls et en fait n'importe quoi d'autre.

    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  6. #6
    Membre averti
    Homme Profil pro
    Toulouse 3
    Inscrit en
    Avril 2012
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

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

    Informations forums :
    Inscription : Avril 2012
    Messages : 31
    Par défaut
    Merci à vous 3, ça marche !

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 05/03/2010, 11h15
  2. Rècupèrer la valeur d une zone de texte
    Par sonia5 dans le forum ASP.NET
    Réponses: 9
    Dernier message: 04/02/2010, 07h48
  3. récupérer des valeurs d'une zone de texte
    Par joe370 dans le forum VBA Word
    Réponses: 6
    Dernier message: 03/10/2009, 10h30
  4. [E-03] Récupérer la valeur d'une zone de texte dans une feuille
    Par moilou2 dans le forum Macros et VBA Excel
    Réponses: 15
    Dernier message: 25/03/2009, 10h57
  5. comment récupérer la valeur d'une zone texte ?
    Par jessy212 dans le forum Access
    Réponses: 2
    Dernier message: 24/08/2006, 14h59

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