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

Access Discussion :

Comment afficher et masquer des traits lors de la saisie de données dans le champ d’un formulaire Access


Sujet :

Access

  1. #1
    Membre confirmé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mars 2015
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Haïti

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2015
    Messages : 64
    Par défaut Comment afficher et masquer des traits lors de la saisie de données dans le champ d’un formulaire Access
    Bonjour,
    J'ai un formulaire access dans lequel l'utilisateur doit entrer un numero de 0 à 9 , j'aimerais à chaque numero taper, qu'access masque et affiche le trait suivant.

    DANS LA PREMIERE IMAGE JE VOUS MONTRE COMMENT MON FORMULAIRE S'AFFICHE LORQUE L'UTILISATEUR EST EN TRAIN DE TAPER LES NUMERO ET DANS LA DEUXIEME IMAGE JE VOUS MONTRAV COMMENT MES 10 TRAIS VERTICAUX DONT DISPOSES.
    Images attachées Images attachées   

  2. #2
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 120
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 120
    Par défaut
    Bonjour,

    Il vous faut utiliser l'évènement "Sur touche relachée"

    Créer une variable pour un compteur global.
    Dans l'évènement traiter les cas possible :
    1) les caractères qui peuvent composer le code (0-9)
    2) les touches pour annuler la saisie (Esc ?), Retour Arrière ...

    Pour le cas 1 on incrémente le compteur global,
    Dans le cas 2 on décrémente ou on met le compteur à 0

    Enfin, d'après le compteur on met les traits visible true ou False.
    On peut faire avancer ou reculer un trait en utilisant la propriété Left.

    Cordialement,
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

  3. #3
    Membre confirmé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mars 2015
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Haïti

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2015
    Messages : 64
    Par défaut
    Merci pour votre REPONSE, pourriez-vous me montrer un expemple de code pour les deux cas? Merci

  4. #4
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 120
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 120
    Par défaut
    Pour faire avancer ou reculer un trait :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    me.trait1.left = valeur
    Utiliser la valeur Left de vos traits existants. Le tout dans un tableau devrait faire l'affaire.

    Pour le traitement je n'ai aucun exemple précis cependant j'ai fait un article sur mon blog pour piloter une liste déroulante. L'interception des touches pressées est le très proche.

    Tri d'une liste déroulante

    A adapter.
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

  5. #5
    Membre confirmé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mars 2015
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Haïti

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2015
    Messages : 64
    Par défaut Je n'arrive TOUJOURS pas
    J'ai utilisé le code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    me.trait158.visible=false
    me.trait176.visible=true
    ....
    Mais cela ne fait afficher un seul trait alors que moi je voudrait a chaque fois qu'on entre un chiffre et que le trait qui s'affichait dispparait et un autre trait s'affiche. en gros mon champ attent 10 caractere et pour chaque caractere j'ai un trait, quand je tape le premier caractere un trait s'affiche, quand je tape le deuxieme caractere le trait qui s'affichait dispparait et un autre trait s'affiche. COMMENT ARRANGER MON CODE POUR QUE L'EVENEMENT SE PASSE COMME CELA.

  6. #6
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 120
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 120
    Par défaut
    Cette propriété Visible est facile à comprendre, Quand elle est à True c'est que l'élément est visible, quand il est à False il est invisible.

    Le F1 sur la propriété (dans la liste des propriétés de l'élément) permet de voir ce que cela fait et comment on doit l'employer.

    Donc ne pas utiliser de False lorsqu'on avance dans la saisie. Aussi simple que ça.
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

  7. #7
    Membre confirmé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mars 2015
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Haïti

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2015
    Messages : 64
    Par défaut
    J'ai utilisé sur touche appuyer

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    me.trait178.left = 5.0555
    Mais au lieu que le trait s'avance, le trait dispparait, auriez vous une suggestion de code pour me permettre de FAIRE AVANCER UN TRAIT VERS LA DROITE A CHAQUE FOIS QUE JE TAPE UN CARACTERE? MERCI

  8. #8
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 120
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 120
    Par défaut
    Le mesure left, top ... sont exprimées en Twips :
    https://learn.microsoft.com/en-us/of...ess.label.left

    Le Twip :
    https://learn.microsoft.com/en-us/of...-glossary#twip

    0.01 cm = 5.6692913386 twips

    Vous indiquez 5.05555 en twip depuis une mesure en cm, vous mettez votre ligne sur le bord gauche du formulaire.

    Faites la conversion et mettez les valeurs en constante ou créer une petite fonction pour cela.

    Le code devrait ressembler à cela.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    Private Sub Age_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
         Me.Age.Left = cm2twip(6.817)  'où 6.817 est "6,817cm" dans la propriété left
    End Sub
     
    Function cm2twip(inCm As Double) As Double
         cm2twip = inCm * 566.92913386
    End Function
    MERCI DE TENIR COMPTE DES MESSAGES DE MODERATION QUE VOUS RECEVEZ.
    Balises de code obligatoire et pas d'utilisation du bouton "Répondre avec citation" sans motif valable.
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

  9. #9
    Expert éminent
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 955
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 955
    Par défaut
    bonjour,
    Citation Envoyé par rcarlyp
    Mais cela ne fait afficher un seul trait alors que moi je voudrait a chaque fois qu'on entre un chiffre et que le trait qui s'affichait dispparait et un autre trait s'affiche. en gros mon champ attent 10 caractere et pour chaque caractere j'ai un trait, quand je tape le premier caractere un trait s'affiche, quand je tape le deuxieme caractere le trait qui s'affichait dispparait et un autre trait s'affiche. COMMENT ARRANGER MON CODE POUR QUE L'EVENEMENT SE PASSE COMME CELA.
    je me permet de demander: l'utilisateur final a t-il vraiment besoin de cela pour saisir un numéro de compte ?
    Sachant qu'un masque de saisie fait pratiquement la même chose:
    Nom : _0.JPG
Affichages : 35
Taille : 50,7 Ko
    Nom : _1.JPG
Affichages : 35
Taille : 64,8 Ko

  10. #10
    Membre confirmé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mars 2015
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Haïti

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2015
    Messages : 64
    Par défaut
    Je voudrais ecrire mon code de cette maniere la:
    if me.entrer__numerocompte= 2 then
    Me.trait1776.visible = false
    Me.trait177.visible = true

    Je voudrais dire si dans le champ "NUMERIO DE COMPTE" un numero de compte de deux caracteres est saisie LE TRAIT 177 DOIT S'AFFICHER , COMMENT ECRIRE MON CODE POUR QUE LEVENEMENT SE PASSE COMME CA?

  11. #11
    Membre confirmé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mars 2015
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Haïti

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2015
    Messages : 64
    Par défaut
    Citation Envoyé par loufab Voir le message
    Le mesure left, top ... sont exprimées en Twips :
    https://learn.microsoft.com/en-us/of...ess.label.left

    Le Twip :
    https://learn.microsoft.com/en-us/of...-glossary#twip

    0.01 cm = 5.6692913386 twips

    Vous indiquez 5.05555 en twip depuis une mesure en cm, vous mettez votre ligne sur le bord gauche du formulaire.

    Faites la conversion et mettez les valeurs en constante ou créer une petite fonction pour cela.

    Le code devrait ressembler à cela.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    Private Sub Age_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
         Me.Age.Left = cm2twip(6.817)  'où 6.817 est "6,817cm" dans la propriété left
    End Sub
     
    Function cm2twip(inCm As Double) As Double
         cm2twip = inCm * 566.92913386
    End Function
    MERCI DE TENIR COMPTE DES MESSAGES DE MODERATION QUE VOUS RECEVEZ.
    Balises de code obligatoire et pas d'utilisation du bouton "Répondre avec citation" sans motif valable.
    BONJOUR,
    J'AI ECRIT MON CODE COMME SUIT MAIS CELA NE FONCTIONNENT PAS.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    Private Sub Entrer___compte_KeyPress(KeyAscii As Integer, Shift As Integer, X As Single, Y As Single)
    Me.Trait158.Visible = False
    Me.Trait176.Left = cm2twip(284)
    Function cm2twip(incm As Double) As Double
    cm2twip = incm * 566.9291
    End Function
    End Sub

  12. #12
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 120
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 120
    Par défaut
    VBA ne prend pas en charge les fonctions encapsulées.

    Comme ce ci ça marchera mieux.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Private Sub Entrer___compte_KeyPress(KeyAscii As Integer, Shift As Integer, X As Single, Y As Single)
    Me.Trait158.Visible = False
    Me.Trait176.Left = cm2twip(284)
    End Sub
     
    Function cm2twip(incm As Double) As Double
    cm2twip = incm * 566.9291
    End Function
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

  13. #13
    Membre confirmé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mars 2015
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Haïti

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2015
    Messages : 64
    Par défaut
    Citation Envoyé par rcarlyp Voir le message
    Je voudrais ecrire mon code de cette maniere la:
    if me.entrer__numerocompte= 2 then
    Me.trait1776.visible = false
    Me.trait177.visible = true

    Je voudrais dire si dans le champ "NUMERIO DE COMPTE" un numero de compte de deux caracteres est saisie LE TRAIT 177 DOIT S'AFFICHER , COMMENT ECRIRE MON CODE POUR QUE LEVENEMENT SE PASSE COMME CA?
    COMMENT ECRIRE UN CODE POUR CE CAS DE FIGURE?

  14. #14
    Membre confirmé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mars 2015
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Haïti

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2015
    Messages : 64
    Par défaut
    Citation Envoyé par loufab Voir le message
    VBA ne prend pas en charge les fonctions encapsulées.

    Comme ce ci ça marchera mieux.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Private Sub Entrer___compte_KeyPress(KeyAscii As Integer, Shift As Integer, X As Single, Y As Single)
    Me.Trait158.Visible = False
    Me.Trait176.Left = cm2twip(284)
    End Sub
     
    Function cm2twip(incm As Double) As Double
    cm2twip = incm * 566.9291
    End Function
    JE VAIS ESSAYER COMME CA POUR VOIR CE QUE CA VA DONNER!

  15. #15
    Membre confirmé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mars 2015
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Haïti

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2015
    Messages : 64
    Par défaut RESOLU
    Bonjour à tous, mon code fonctionne parfaitement maintenant, merci pour vos messages!

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 05/12/2007, 19h06
  2. Afficher et masquer des feuilles
    Par LaPanic dans le forum Excel
    Réponses: 10
    Dernier message: 05/09/2007, 11h27
  3. Comment afficher le rang des résultats d'une requête sous Access 2002
    Par painpepper dans le forum Requêtes et SQL.
    Réponses: 5
    Dernier message: 15/08/2007, 01h19
  4. Impossible d'afficher ou masquer des DIV
    Par ensemblevide dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 11/07/2006, 13h23
  5. Réponses: 23
    Dernier message: 23/05/2006, 16h52

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