Applies ToAccess pour Microsoft 365 Access 2021 Access 2019

Les sections suivantes montrent comment utiliser les formulaires d’employé et comment les programmer. Les noms d’objets sont fournis afin que vous puissiez facilement les examiner dans la base de données Northwind 2.0 Starter Edition.

Voici des détails importants sur l’utilisation du formulaire de liste des employés :

  • À partir du menu main, sélectionnez Employés dans le menu de gauche pour afficher une liste d’employés (sfrmMainMenu_EmployeeList) dans l’espace de travail à droite.

  • L’ID de chaque employé est un lien hypertexte permettant d’ouvrir l’enregistrement de cet employé dans un formulaire contextuel afin de modifier ses détails.

  • Pour ajouter un nouvel employé, cliquez sur le bouton Ajouter un employé à l’extrême droite de la ligne d’en-tête qui ouvre un nouvel enregistrement d’employé dans un formulaire contextuel (sfrmEmployeeDetail_OrderList) pour ajouter ses détails.

Voici des détails importants sur l’utilisation du formulaire contextuel détails de l’employé :

  • Le formulaire contextuel détails de l’employé (frmEmployeeDetail) permet de modifier et d’ajouter des enregistrements d’employés.

  • Trois champs sont obligatoires pour tous les employés : Prénom, Nom et Poste.

  • Les messages d’erreur Access par défaut vous alertent quand un ou plusieurs messages d’erreur ne sont pas terminés avant d’essayer d’enregistrer l’enregistrement de l’employé. Aucune validation n’est appliquée à d’autres champs, tels que l’adresse e-mail et les numéros de téléphone. Les utilisateurs sont responsables de la mise en forme appropriée, par exemple (000) 000-000. La validation d’accès par défaut dans le contrôle de liste déroulante des titres limite les entrées à une liste de valeurs présélectionnés. Vous pouvez ajouter de nouveaux titres, à nouveau, en utilisant le comportement Access par défaut pour les contrôles de champ de valeur. La sélection de la liste déroulante dans le formulaire affiche l’icône de modification.Champ à valeurs multiples

  • Les images des employés sont stockées dans la table sous forme de champ de pièce jointe. Vous ajoutez de nouvelles images ou modifiez des images existantes en utilisant le comportement Access par défaut pour les champs de pièces jointes.Exemple d’image jointe

  • Si un employé a créé des commandes, le sous-formulaire à droite de la fenêtre contextuelle des détails de l’employé répertorie ces commandes en mode Feuille de données.

  • Toute commande existante pour cet employé peut être modifiée en cliquant sur le lien hypertexte ID de commande # dans le sous-formulaire Commandes (sfrmOrderDetails).

Les formulaires d’employé utilisent des macros VBA et incorporées dans les contrôles des formulaires pour effectuer une logique de base. Ils contiennent deux macros autonomes et plusieurs macros incorporées.

Liste des employés

  • Le formulaire Liste des employés (sfrmMainMenu_EmployeeList) obtient ses données à partir d’une requête simple qryEmployeeList (à partir de la propriété RecordSource ). Il est recommandé de baser un formulaire d’entrée de données sur une requête à une table.

  • Les contrôles du formulaire de liste des employés sont activés, ce qui signifie que vous pouvez les sélectionner et verrouillés, ce qui signifie qu’ils sont en lecture seule.

  • Le champ Titre, qui est basé sur un champ à plusieurs valeurs, est une liste déroulante ou une zone de liste déroulante. Sa source de ligne est une liste de valeurs, ce qui signifie que les éléments facultatifs disponibles sont contenus directement dans ce champ. La propriété Limit to List est définie sur « Oui », car ce formulaire n’est pas destiné à être modifié. Le champ à plusieurs valeurs est inclus uniquement en tant qu’illustration de la fonctionnalité, et non en tant que recommandation.

  • Dans la liste des employés (sfrmMainMenu_EmployeeList), deux procédures Sub sur les événements Key Up et Key Down répondent aux mouvements de curseur d’un utilisateur en mode Feuille de données. Ils détectent la direction d’un mouvement de curseur (gauche, droite, au-dessus ou en dessous) et appellent des fonctions VBA qui déplacent le focus sur le contrôle approprié.

  • Vous modifiez les enregistrements d’employés existants et en ajoutez de nouveaux dans le formulaire de détails (frmEmployeeDetail).

  • Vous pouvez ouvrir le formulaire détails de l’employé à partir de la liste des employés sous la forme d’un formulaire contextuel modifiable de deux manières :

    • En sélectionnant un EmployeeID, qui est mis en forme pour apparaître sous la forme d’un lien hypertexte, ouvrez le formulaire de détails de l’employé et filtrez-le uniquement sur cet enregistrement d’employé.

    • En sélectionnant l’étiquette Ajouter un employé dans l’en-tête de formulaire pour ouvrir le formulaire de détails de l’employé et déplacer le focus sur un nouvel enregistrement. Tous les enregistrements actuels se trouvent dans la source d’enregistrement du formulaire.

    Notez que les deux approches peuvent avoir des impacts différents sur les performances. Le filtrage d’un formulaire sur un enregistrement unique réduit la quantité de données à transférer à partir de la table. Avec un jeu d’enregistrements de petite taille, la différence peut ne pas être perceptible.

Détails de l’employé

  • Le formulaire détails de l’employé (frmEmployeeDetail) obtient ses données à partir d’une requête simple, qryEmployeeDetails (à partir de la propriété RecordSource du formulaire). Il est recommandé de baser un formulaire de saisie de données sur une requête à une table.

  • La clause SELECT dans qryEmployeeDetails utilise le caractère générique astérisque (*) pour sélectionner tous les champs de la table, tandis que la clause SELECT dans qryEmployeeList répertorie des champs spécifiques. L’utilisation du caractère générique permet de récupérer de nouveaux champs dans une table sous-jacente sans modification supplémentaire de la requête. Cela n’est pas possible avec une liste de champs spécifiques. Une liste de champs spécifiques limite le jeu d’enregistrements aux champs nécessaires dans le formulaire d’affichage uniquement. Votre conception doit être basée sur l’approche la plus appropriée à vos besoins, bien que la préférence devrait aller à l’approche la moins susceptible de nécessiter une maintenance future, à savoir l’utilisation du caractère générique.

  • Les contrôles du formulaire des détails de l’employé sont activés et non verrouillés, ce qui signifie que vous pouvez les sélectionner et les modifier.

  • Le champ Titre, qui est basé sur un champ à plusieurs valeurs, est une liste déroulante ou une zone de liste déroulante. Sa source de ligne est une liste de valeurs, ce qui signifie que les éléments facultatifs disponibles sont contenus directement dans ce champ. La propriété Limit to List est définie sur « Non », car ce formulaire est destiné à être modifié. L’ajout ou la modification de titres utilise la méthode Access intégrée. Aucun code n’est donc requis. Le champ à plusieurs valeurs est inclus uniquement en tant qu’illustration de la fonctionnalité, et non en tant que recommandation.

  • Vous pouvez modifier les enregistrements d’employés existants et les nouveaux dans le formulaire de détails.

  • Vous pouvez ouvrir le formulaire détails de l’employé à partir de la liste des employés sous la forme d’un formulaire contextuel modifiable de deux manières :

    • En sélectionnant un EmployeeID, qui est mis en forme pour apparaître sous la forme d’un lien hypertexte, ouvrez le formulaire des détails de l’employé et filtrez-le uniquement sur cet enregistrement d’employé.

    • En sélectionnant l’étiquette Ajouter un employé dans l’en-tête de formulaire pour ouvrir le formulaire de détails de l’employé et déplacer le focus sur un nouvel enregistrement. Tous les enregistrements actuels se trouvent dans la source d’enregistrement du formulaire.

  • Le filtrage d’un formulaire sur un enregistrement unique réduit la quantité de données à transférer vers le formulaire à partir de la table. Avec un jeu d’enregistrements de petite taille, comme les exemples de données, la différence peut ne pas être perceptible.

  • Le contrôle de sous-formulaire (sfrmEmployeeDetail_OrderList) à droite de Personal Information affiche les commandes de l’employé actuellement sélectionné (le cas échéant). Le sous-formulaire dans le contrôle de sous-formulaire est réaplidé à partir de la section Commandes . Les propriétés intégrées Access LinkMasterFields/LinkChildFields du contrôle de sous-formulaire synchronisent et filtrent les enregistrements affichés pour chaque employé.

  • Dans les détails de l’employé (frmEmployeeDetail), deux procédures Sub sur l’événement en cours et sur l’événement de fermeture du formulaire répondent à ces événements :

    • Sur Actuel affiche ou masque l’étiquette Ajouter un employé selon que l’enregistrement actif est existant ou s’il s’agit d’un enregistrement pour un nouvel employé, démarré mais pas encore enregistré.

    • Sur Fermer effectue deux actions de maintenance. Il interroge à nouveau l’objet Recordset dans le sous-formulaire détails de l’employé pour mettre à jour les ajouts ou modifications apportés au formulaire de détails. Il resynchronise l’affichage du nombre d’employés dans le menu main en appelant cette macro.

Macros

macMainMenu_UpdateSubs       Cette macro est autonome et s’exécute lorsque certains événements se produisent, y compris les formulaires d’employé. Dans macMainMenu_UpdateSubs, les submacros sont regroupés en fonction des caractéristiques auxquelles ils s’appliquent. Pour les employés, la sous-zone synchronise le nombre d’enregistrements des employés avec le nombre affiché dans le menu main.

Macros incorporées    Les formulaires employés sont principalement pilotés par des macros incorporées contenues dans le formulaire et modifiables uniquement à partir du formulaire. Dans la liste des employés (sfrmMainMenu_EmployeeList) :

  • Lien hypertexte EmployeeID       Cliquez sur employeeID dans le formulaire de liste des employés pour ouvrir le formulaire Détails de l’employé et définir le focus sur l’enregistrement d’employé sélectionné.

  • Ajouter une étiquette d’employé      Le fait de cliquer sur le bouton Ajouter un employé ouvre le formulaire de détails de l’employé (frmEmployeeDetail) et définit le focus sur un nouvel enregistrement.

  • Détails de l’employé           Cliquez sur le bouton Ajouter un employé dans l’en-tête pour enregistrer l’enregistrement actif et définir le focus sur un nouvel enregistrement.

Voir aussi

Northwind 2.0 Starter Edition

Besoin d’aide ?

Vous voulez plus d’options ?

Explorez les avantages de l’abonnement, parcourez les cours de formation, découvrez comment sécuriser votre appareil, etc.

Les communautés vous permettent de poser des questions et d'y répondre, de donner vos commentaires et de bénéficier de l'avis d'experts aux connaissances approfondies.