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 :

Masque de saisie et Valide Si


Sujet :

VBA Access

Vue hybride

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 123
    Par défaut Masque de saisie et Valide Si
    Bonjour

    Je dois mettre à l'aide de code VBA, un masque de saissie et une condition de validité sur un champ texte.

    Voila comment je procède.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Me.textMontant.InputMask = "00.0;;_"
    Me.textMontant.ValidationRule = "<8.1"
    Malheureusement si chacune des solutions appliquées une par unee marche réunie il m'est impossible de renter dans le champ texte un nombre > à 00.08?

    Merci d'avance de votre aide

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

    Dans ton InputMask, rajoute un 0, et pourquoi 2 séparateurs ?

    Est-ce que cela ne te suffit pas ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     Me.textMontant.InputMask = "00.00"
    Starec

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    123
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 123
    Par défaut
    Citation Envoyé par Starec Voir le message
    Bonjour

    Dans ton InputMask, rajoute un 0, et pourquoi 2 séparateurs ?

    Est-ce que cela ne te suffit pas ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     Me.textMontant.InputMask = "00.00"
    Starec
    Nan ça ne change rien:

    J'ai aussi essayé en vain cela:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
            Me.textMontant.InputMask = "00.00"
            Me.textMontant.ValidationRule = "<08.10"
    Les deux séparateurs ";;" c'est par ce que quand je le fais à la main Access me les rajoutes automatiquement.

    Le problème reste le même impossible de mettre un nombre > à 00,08.
    Est-ce un bug d'Access qui ne tient pas compte des décimales?

  4. #4
    Membre Expert
    Avatar de FreeAccess
    Homme Profil pro
    Un monde ou prendre est plus facile qu'apprendre.
    Inscrit en
    Mars 2006
    Messages
    2 745
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Un monde ou prendre est plus facile qu'apprendre.

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 745
    Par défaut
    Bonjour....
    ...impossible de mettre un nombre > à 00,08.
    ...c'est normal, c'est ce que tu demande a ACCESS dans le contrôle de validité......
    .à corriger
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private Sub Form_Current()
        Me.TextMontant.InputMask = "00.00;_"
        Me.TextMontant.ValidationRule = ">00.08"
    End Sub
    [EDIT] Propriété du champ:
    ...Format = nombre général
    ...Décimal = 2

    Ici, ton nombre saisie devra être supérieur à 00,08

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    123
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 123
    Par défaut
    Citation Envoyé par FreeAccess Voir le message
    Bonjour....


    ...c'est normal, c'est ce que tu demande a ACCESS dans le contrôle de validité......
    .à corriger
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private Sub Form_Current()
        Me.TextMontant.InputMask = "00.00;_"
        Me.TextMontant.ValidationRule = ">00.08"
    End Sub
    [EDIT] Propriété du champ:
    ...Format = nombre général
    ...Décimal = 2

    Ici, ton nombre saisie devra être supérieur à 00,08
    Ce que je veux c'est qu'il ne puisse être plus grand que "08.10".
    Donc il est valide si "<08.10"
    Avec le masque il ne prenait que le dernier chiffre pour établir sa comparaison:
    Je pouvais donc rentrer:
    -00,01.
    -00,02
    ...
    -00,08
    Et plus rien après.

    Mais grâce à ton post qui m'a fait découvrir la propriété format j'ai résolu mon problème.
    En fait mon champ est monétaire j'ai donc utilisé la propriété .Format = "Euro" et .ValidationRule = "<8.1".

    Merci à toi et "Starec" d'avoir résolut mon problème.

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

Discussions similaires

  1. Réponses: 9
    Dernier message: 20/09/2005, 17h18
  2. Définir propriété masque de saisie en VBA
    Par spidev dans le forum Access
    Réponses: 4
    Dernier message: 21/06/2005, 14h10
  3. Masque de saisie
    Par moicalex dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 03/03/2005, 19h05
  4. Réponses: 2
    Dernier message: 17/02/2005, 00h00
  5. problème avec masque de saisie dans table
    Par porki dans le forum Access
    Réponses: 6
    Dernier message: 13/10/2004, 08h58

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