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 :

Problème de saisie dans un champ


Sujet :

VBA Access

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Avril 2012
    Messages : 6
    Par défaut Problème de saisie dans un champ
    Bonjour,
    J'aurai besoin d'un peu d'aide pour un problème de champ.
    Je vous explique :
    J'ai 3 Champs ; Code, Réf1 et Réf2.
    Dans le premier champ (Code), on saisie un code (exemple : AA).
    Dans le second champ (Réf1), j'aimerai que l'on puisse récupérer la valeur du premier champ et ajouter un chiffre derrière.
    Pour le troisième champ (Réf2), il faudrait faire la même chose mais avec le deuxième champ.

    En plus explicatif :
    Si Code = AA, alors Réf1 = AA001 (avec le '01' insérer manuellement) et Réf2 = AA001_1 (avec le dernier '1' insérer manuellement).

    J'ai essayé de le coder en VBA avec :
    Réf1 = [Code] + "0" + " " mais je peux pas faire d'insertion manuelle.
    Réf2 = [Réf1] + "_" + " " idem que avec le champ Réf1

    Alors j'aurai aimé savoir si il exister un moyen de définir un champ et d'ajouter manuellement un chiffre ou un caractère.
    Ça fait 2 jour que je cherche (j'ai même essayer en faisant des récupération de référence sur les tables, ou alors avec un indice qui s'incrémente en comparant les références, j'y arrive pas ..) et j'aimerai pouvoir m'en sortir..

    Cordialement,

  2. #2
    Membre expérimenté Avatar de Flyoss
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2012
    Messages
    157
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Cher (Centre)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Mars 2012
    Messages : 157
    Par défaut
    Bonjour,

    Si tu passe par une requête il me semble que tu peux faire comme ceci

    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    Réf1 = [c0de] + "0" + [Quelle Ref1 ?]

  3. #3
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Avril 2012
    Messages : 6
    Par défaut
    Merci pour la réponse si rapide !
    EN fait, j'ai pas de requête car je fait tout avec le même formulaire et j'enregistre toutes ces données sur la même table. Donc je pensais que c'était pas utile ..
    Pour le code, on le récupère de par une table d'enregistrement.
    Cet évènement est déclenché sur le clic du champ et du coup, les caractères sont surligné et je peux pas écrire à la suite ... Si j'écris, cela supprime tout ..
    Et par [Quelle Réf11 ?], tu peux écrire derrière à la place de cette chaîne?

  4. #4
    Membre expérimenté Avatar de Flyoss
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2012
    Messages
    157
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Cher (Centre)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Mars 2012
    Messages : 157
    Par défaut
    Pardon j'avais pas vu le

    Citation Envoyé par DevilTom Voir le message
    J'ai essayé de le coder en VBA avec :
    Et je me suis même dit dans ma tête:

    Citation Envoyé par ma tête
    Il passerait par du VBA ce serait bien mieu
    Du coup je te propose de passer par un input box

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Réf1.value = [c0de].value & "0" & InputBox("Message pour l'utilisateur")
    Je te conseille tout de même de concaténer tes chaines avec des esperluettes et d'éviter les accents sur les noms de tes variables et champs.

  5. #5
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Avril 2012
    Messages : 6
    Par défaut
    Ahah j'aime tes citations

    La Input box (si je suis pas trop nul ...) c'est bien une fenêtre qui va s'ouvrir en plus ? Car je cherche l'ergonomie et la rapidité (c'est un système que l'on va utiliser sur terrain et il faut que ça soit rapide et fluide). Donc je pense que ouvrir une box en plus va nous faire perdre un peu de temps. Certes quelques secondes mais on aura une centaine de référence, donc au bout, c'est des minutes.

    Pour les références de champs, j'ai pris des noms explicites pour moi mais au final très complexe, je l'avoue ..

    Sinon, j'ai réfléchi à une autre solution : créer un autre champ (Numéro) que l'on remplis en format numérique à 2 caractères et pour Réf1, faire :
    [Réf1].value = [code].value + "0" + [Numéro]
    Faire la même chose pour Réf2.
    Ca semble être une bonne solution d'après vous?

  6. #6
    Membre expérimenté Avatar de Flyoss
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2012
    Messages
    157
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Cher (Centre)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Mars 2012
    Messages : 157
    Par défaut
    Ca fait 2 mois que j'utilise access et pourtant je peux déja dire :
    "(presque) TOUT est possible, (presque) TOUT est réalisable"
    Tout dépend de l'ergonomie, de la présentation que tu veux avoir

    Tu peux

    - Avoir 3 champs [c0de] [ref1] [ref2] avec des inputbox sur évenement choisis (boutons, getfocus, lostfocus) A savoir que l'input box prend le focus donc du coup, pas besoin de la souris, ça reste relativement ergonomique)

    - Avoir 5 champs [c0de] [supplement1] [ref1] [supplement2] [ref2] : tu remplis le code et les suppléments et ça te remplit les refs

    - Avoir 3 champs [c0de] [supplement1] [supplement2] : bien collés côte-à-côte et ça affiche (a peu pres) tes références.

    - ...


    En fait je pense qu'il faut surtout savoir ce que tu veux avoir a l'écran, et ensuite, VB est la pour le faire

    PS: Concatène avec des Esperluettes (str1 + str2 => str1 & str2)

  7. #7
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Avril 2012
    Messages : 6
    Par défaut
    ça fait une semaine que j'utilise (vraiment) access et j'ai appris avec des forums comme celui ci. Et j'y suis pas encore au top niveau

    Pour la ref1 (ouais on va simplifié), la inputbox a fait son succès pour les techniciens de chantier.
    Par contre pour la ref2, on a décider de compliquer beaucoup plus au final ... Et comme tu a l'air doué, j'aimerai bien avoir tes conseils, sans trop profiter

    Le champs ref2 est dans un sous formulaire (sur le même form). La saisie d'un nombre se fera uniquement si on clique sur le champ.

    En gros, ref1 affiche AA001. Ref2 affiche donc AA001_ si on ne clique pas sur le champ (avoir une valeur par défaut en affichage). Et si on clique, sur l'évènement Click, j'envoie la input box.

    Donc, j'ai essayé d'appliquer un AfterUpdate sur le champ ref1 en indiquant que ref2 aurait la valeur de défaut.

    En gros :
    Forms.New.NewSF.Form.[Ref2].Value = [Ref1].Value & "_" & InputBox("Numéro :")
    New étant le formulaire de base et NewSF, son sous formulaire.
    Mais ... le champ ref2 se remplit pas !

    Donc si tu voit ce que je veux dire, tu aurait une soluce?

    Ps : j'ai pas compris ton ps ... tu voulais dire ref1 & ref2 => str1 & str2, non?

  8. #8
    Membre expérimenté Avatar de Flyoss
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2012
    Messages
    157
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Cher (Centre)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Mars 2012
    Messages : 157
    Par défaut
    Hum...
    Peut-être que "afterUpdate" n'est pas vraiment le bon évènement.
    Tu pourrais peut^-être essayer un OnChange ou un OnDirty.
    J'ai encore un peu de mal a bien comprendre la subtiité de chaque évènement, je tatonne
    Le LostFocus peut aussi être une solution dans certains formulaires....

Discussions similaires

  1. Problème de saisie dans un champs alpha
    Par mourad_55 dans le forum 4D
    Réponses: 7
    Dernier message: 11/01/2012, 13h27
  2. Modification d'une combo suite à la saisi dans un champ texte
    Par GabriHell dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 16/05/2006, 17h48
  3. Bloquer la saisie dans les champs
    Par zorba49 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 27/02/2006, 16h07
  4. [JTextField] Problème d'affichage dans un champ ...
    Par mitje dans le forum Composants
    Réponses: 2
    Dernier message: 01/02/2006, 15h41
  5. Problème de soustraction dans un champ
    Par Tyraelina dans le forum Access
    Réponses: 1
    Dernier message: 18/12/2005, 17h18

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