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 :

Créer un formulaire prérempli


Sujet :

Access

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Operations manager
    Inscrit en
    Août 2020
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Belgique

    Informations professionnelles :
    Activité : Operations manager
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2020
    Messages : 6
    Points : 1
    Points
    1
    Par défaut Créer un formulaire prérempli
    Bonjour,
    Je suis newbie en access (j'ai des restes scolaire) mais en général je m'en sors plutôt bien avec l'apprentissage des logiciels en autodidacte. Mais ici, je sèche.

    Je suis en train de mettre en place une DB pour gérer les moteurs diesels d'un flotte de locomotives.
    J'ai une table principale "infos moteurs" qui donne les caractéristiques des moteurs (marque, type, S/N, ainsi que le numéro de loco sur lequel il est installé).
    J'ai des tables secondaires ou je souhaite enregistrer des informations relatives aux entretiens.
    Pour l'exemple ici, je prends la table "Heures moteurs" qui contient à nouveau les infos N° de loco et n° de série et le nombre d'heure du diesel.

    L'utilisateur doit d'abord choisi dans le formulaire "par numero de loco", le n° de la locomotive dans une liste déroulante. en cliquant sur le bouton suivant, un autre formulaire "Menu par numéro de loco" s'ouvre avec en en-tete une sous-requête qui affiche les champs de la table "infos moteurs" pour cette loco.
    Dans ce formulaire il y a en plus une série de boutons dont "introduire un nouveau relevé d'heures" qui ouvre un nouveau formulaire pour introduire les heures et ainsi compléter la table "Heures moteurs".


    Problème n°1 : la sous requête dans le formulaire "Menu par numéro de loco" n'affiche des valeurs que si le formulaire "par numéro de loco" avec la liste déroulante reste ouvert. Or je souhaiterais pouvoir le fermer. Comment faire pour que la valeur choisie dans la liste déroulante reste enregistrée meme si le formulaire est fermé ?
    Nom : NO loco.JPG
Affichages : 120
Taille : 22,4 Ko
    Nom : Menu par numéro de loco.JPG
Affichages : 142
Taille : 28,0 Ko


    Problème n°2 : Je souhaite que le formulaire "introduire un nouveau relevé d'heures" soit un formulaire pour un nouvel enregistrement dans lequel les champs de la table "Heures moteurs" apparaissent préremplis avec les valeurs du dernier enregistrement pour la loco choisie dans la liste déroulante du formulaire "par numéro de loco". J'ai essayé en donnant dans les propriétés source contrôle la valeur issue de la requête utilisée avant mais cela ne fonctionne pas. Il me met #Nom? ... J'ai beau chercher la raison pour laquelle cela ne fonctionne pas mais je ne trouve pas. En VBA, je ne vois pas trop comment faire non plus. J'ai fait quelques essais avec recordset mais sans succès.

    Nom : Heures moteurs.JPG
Affichages : 110
Taille : 31,7 Ko

    Votre aide serait fortement appréciée car je m'arrache les cheveux.

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

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 814
    Points : 14 902
    Points
    14 902
    Par défaut
    bonjour,
    J'ai essayé en donnant dans les propriétés source contrôle la valeur issue de la requête utilisée avant mais cela ne fonctionne pas. Il me met #Nom? ...
    la source contrôle correspond au champ de la table à alimenter, essaie plutôt la propriété "Valeur par défaut"

  3. #3
    Nouveau Candidat au Club
    Homme Profil pro
    Operations manager
    Inscrit en
    Août 2020
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Belgique

    Informations professionnelles :
    Activité : Operations manager
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2020
    Messages : 6
    Points : 1
    Points
    1
    Par défaut
    Citation Envoyé par tee_grandbois Voir le message
    bonjour,

    la source contrôle correspond au champ de la table à alimenter, essaie plutôt la propriété "Valeur par défaut"
    Merci mais cela ne fonctionne pas non plus. J'ai toujours #Nom?.

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

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 814
    Points : 14 902
    Points
    14 902
    Par défaut
    peux-tu faire une impression d'écran du formulaire en mode création et montrer les propriétés des 2 champs ?

  5. #5
    Nouveau Candidat au Club
    Homme Profil pro
    Operations manager
    Inscrit en
    Août 2020
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Belgique

    Informations professionnelles :
    Activité : Operations manager
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2020
    Messages : 6
    Points : 1
    Points
    1
    Par défaut
    Citation Envoyé par tee_grandbois Voir le message
    peux-tu faire une impression d'écran du formulaire en mode création et montrer les propriétés des 2 champs ?
    Voici :
    Nom : Form creation.JPG
Affichages : 110
Taille : 125,1 Ko

    et le résultat de la query sur un numéro de loco qui montre que la query fonctionne
    Nom : query result.JPG
Affichages : 113
Taille : 36,4 Ko

  6. #6
    Nouveau Candidat au Club
    Homme Profil pro
    Operations manager
    Inscrit en
    Août 2020
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Belgique

    Informations professionnelles :
    Activité : Operations manager
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2020
    Messages : 6
    Points : 1
    Points
    1
    Par défaut
    c'est sur l'image. Le nom est celui qui est affiché en haut dans la liste déroulante et la propriété valeur par défaut est dans la liste montrée

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

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 814
    Points : 14 902
    Points
    14 902
    Par défaut
    Je souhaite que le formulaire "introduire un nouveau relevé d'heures" soit un formulaire pour un nouvel enregistrement dans lequel les champs de la table "Heures moteurs" apparaissent préremplis avec les valeurs du dernier enregistrement pour la loco choisie dans la liste déroulante du formulaire "par numéro de loco".
    on ne peut pas utiliser une requête de cette façon pour alimenter la valeur par défaut, cela doit être dans cette syntaxe :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     =Formulaires![Par numéro de loco]![loco]
    ou éventuellement avec une fonction de domaine

  8. #8
    Nouveau Candidat au Club
    Homme Profil pro
    Operations manager
    Inscrit en
    Août 2020
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Belgique

    Informations professionnelles :
    Activité : Operations manager
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2020
    Messages : 6
    Points : 1
    Points
    1
    Par défaut
    Ce code permet d'aller chercher des valeurs dans un formulaire, c'est ce que j'ai utilisé pour aller chercher la valeur de la liste déroulante. Les valeurs que je veux extraire sont dans une requête.

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

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 814
    Points : 14 902
    Points
    14 902
    Par défaut
    bonjour,
    dans ce cas, si la requête ne renvoie qu'un unique enregistrement, utilise la fonction de domaine:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     =RechDom("[Heures moteurs].[Loco]";"Query par numero loco")
    par contre, on voit que les champs "Loco" et "Numéro de série" sont affichés 2 fois avec le nom de la table préfixée, il faut éviter cela, je te conseille de n'afficher que les informations d'une des 2 tables et dans le cas où cette requête servirait à effectuer une mise à jour ou un ajout, il faut afficher celle de la table concernée (pour les champs en double, bien entendu)

  10. #10
    Nouveau Candidat au Club
    Homme Profil pro
    Operations manager
    Inscrit en
    Août 2020
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Belgique

    Informations professionnelles :
    Activité : Operations manager
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2020
    Messages : 6
    Points : 1
    Points
    1
    Par défaut
    Super, ça fonctionne ! Merci !

    Et un idée pour l'autre partie de ma question (problème n°1) : comment garder la valeur d'une liste déroulante (dans mon cas [modifiable19]) même avec le formulaire fermé?

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

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 814
    Points : 14 902
    Points
    14 902
    Par défaut
    tu peux stocker l'information, soit dans une table paramètre que tu peux récupérer avec Rechdom ou passer par une variable temporaire.
    Personnellement je préfère la logique des formulaires appelants ouverts en cascade

Discussions similaires

  1. Créer un formulaire d'authentification
    Par horri dans le forum Langage
    Réponses: 6
    Dernier message: 09/05/2006, 19h22
  2. Créer un formulaire d'importation sous access
    Par Raphaëlle dans le forum Access
    Réponses: 8
    Dernier message: 25/03/2006, 14h59
  3. Créer un formulaire dynamique
    Par pomgnon dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 13/03/2006, 14h13
  4. Créer un formulaire
    Par Paulo77 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 30/01/2005, 20h20
  5. Créer un formulaire avec VBA ?
    Par Jean Bonnisme dans le forum VBA Access
    Réponses: 3
    Dernier message: 14/10/2004, 10h40

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