formateur informatique

Formulaire Access pour insérer des données

Accueil  >  Bureautique  >  Access  >  Access Avancé  >  Formulaire Access pour insérer des données
Livres à télécharger


Pour partager cette vidéo sur les réseaux sociaux ou sur un site, voici son url :


Inscription Newsletter    Abonner à Youtube    Vidéos astuces Instagram
Sujets que vous pourriez aussi aimer :


Formulaire Access pour insérer des données

Dans une précédente formation Access, nous avions créé un formulaire d'ajout d'enregistrements. Et pour cela, nous avions conçu des requêtes action dynamiques. Mais nous allons le voir, Access offre une méthode automatisée pour créer un formulaire d'insertion de données.

Formulaire Access pour créer de nouveaux enregistrements automatiquement

Source et présentation de la problématique
Des données sont nécessaires pour la mise en oeuvre de ces travaux. Nous devons commencer par réceptionner cette petite base Access. Comme l'illustre le volet sur la gauche, cette base de données n'est constituée que d'une seule table.
  • Double cliquer sur cette table Biens pour afficher son contenu en mode feuille de données,
Table de base de données Access archivant les biens immobiliers en vente

Cette table archive des biens immobiliers à la vente. Ils sont référencés sur un certain niveau de détail organisé par les champs définis. On note la précision sur la ville, le prix bien entendu mais aussi la superficie et le nombre de pièces par exemple.

Ces offres sont intéressantes pour l'agent immobilier qui souhaite isoler sur demande, les biens répondant potentiellement aux critères du client. Mais pour bénéficier d'informations constamment actualisées, de nouveaux biens doivent pouvoir être renseignés pour enrichir la base de données des offres.

Et comme vous le savez, les tables sont les outils permettant de concevoir la structure de la base de données. En aucun cas, elles ne doivent servir à ajouter, modifier ou supprimer des informations. Ces manipulations s'opèrent par le biais des formulaires.

Créer un formulaire d'ajout
Access ne propose pas d'assistant pour concevoir un formulaire d'insertion d'enregistrements. Mais comme nous allons le découvrir, il s'agit simplement de régler une propriété d'un formulaire classique. Cette propriété aura pour effet de transformer la nature du formulaire.
  • Cliquer sur la croix de l'onglet pour fermer la table Biens,
  • Cliquer sur l'onglet Créer en haut de la fenêtre Access pour activer son ruban,
  • Dans la section Formulaires du ruban, cliquer sur le bouton Assistant Formulaire,
Construire formulaire Access pour ajout de données avec assistant

Un formulaire doit être bâti sur une table ou une requête. Seule la table Biens existe à ce stade. C'est pourquoi elle est proposée par défaut dans la liste déroulante Tables/Requêtes.
  • Au centre de la boîte de dialogue, cliquer sur le bouton à la double flèche orientée à droite,
Cette action a pour effet d'intégrer tous les champs de la table d'origine dans la construction du formulaire. Cependant, l'un d'entre eux ne nous intéresse pas. Le champ bien_id représente la clé primaire auto-incrémentée. A chaque création d'enregistrement, il génère automatiquement sa valeur unique. Il ne doit donc pas être proposé à la saisie.
  • Dans la liste de droite, sélectionner le champ bien_id,
  • Puis, cliquer sur le bouton de la flèche orientée à gauche,
Cette action a pour effet de l'extraire de la liste des champs servant à la conception.
  • Cliquer ensuite sur le bouton Suivant en bas de la boîte de dialogue,
La disposition Colonne simple qui est suggérée par défaut nous convient.
  • Cliquer de nouveau sur le bouton Suivant pour accéder à la dernière étape de l'assistant,
  • Le nommer Ajouter_Biens et cliquer sur le bouton Terminer,
Nommer le formulaire créé avec assistant Access

Le formulaire apparaît en mode exécution, sous sa forme la plus classique. Et à ce titre, en bas de l'écran, vous notez la présence de la barre de navigation permettant de parcourir l'ensemble des enregistrements, issus de la table Biens.

Boutons de déplacement entre enregistrements du formulaire Access

C'est précisément ce que nous ne souhaitons pas. En l'état, tout enregistrement, donc toute offre immobilière, peut être consultée mais aussi modifiée instantanément. Notre formulaire d'ajout doit simplement proposer les zones pour décrire un nouveau bien à insérer dans la table.
  • Dans le ruban Accueil, cliquer sur la flèche du bouton Affichage,
  • Dans la liste, choisir Mode création,
Pour les paramétrages à suivre, la feuille de propriétés est absolument nécessaire. Si elle n'est pas visible dans votre environnement, vous devez l'afficher. Et pour cela, vous devez cliquer sur le bouton Feuille de propriétés dans la section Outils du ruban contextuel Création.

Feuille de propriétés pour paramétrer le formulaire Access

Par défaut, elle apparaît sur la droite de l'écran. Mais vous pouvez la positionner à votre guise. Cette feuille de propriétés est contextuelle. Elle offre tous les réglages qu'il est possible de réaliser pour le contrôle sélectionné. Et le contrôle actif par défaut est le formulaire lui-même. C'est d'ailleurs ce que précise la mention Formulaire en en-tête de cette feuille.

Sélectionner un formulaire Access en mode conception pour définir ses propriétés

Si tel n'était pas le cas, vous devriez cliquer à l'intersection en haut à gauche du formulaire en création, pour le désigner explicitement.
  • Dans la feuille de propriétés, cliquer sur l'onglet Données pour l'activer,
  • Puis, régler la propriété Entrée de données sur Oui,
Ce simple réglage indique à Access que le formulaire n'est pas un formulaire classique de consultation et de modification des données existantes. Sa vocation est de créer de nouveaux enregistrements. Et c'est ainsi que nous lui stipulons.

Transformer formulaire Access de consultation en formulaire ajout de données

Nous devons exécuter le formulaire pour constater l'incidence de ce réglage.
  • A gauche du ruban Création, cliquer sur la flèche du bouton Affichage,
  • Dans la liste, choisir Mode formulaire,
Formulaire Access pour créer de nouveaux enregistrements dans la table

Comme vous le constatez, plus aucune information n'est affichée. D'ailleurs la barre de navigation en bas du formulaire est explicite. Il n'est plus possible de naviguer au travers des enregistrements de la table source. Donc, il n'est plus possible de les modifier.

La vocation de ce formulaire est de renseigner les champs désormais vides pour créer une nouvelle entrée. Et pour ce faire, nous aurons besoin de générer un évènement, comme la fermeture du formulaire, pour valider la création.

Propriétés du formulaire d'insertion
Pour une application professionnelle, il est tout à d'abord nécessaire de peaufiner certains réglages du formulaire. Nous l'avons évoqué, la barre de navigation n'est plus utile dans notre cas. De même, le sélecteur d'enregistrement, matérialisé par une petite flèche orientée à droite, n'est pas nécessaire.
  • Dans le ruban Accueil, cliquer sur la flèche du bouton Affichage,
  • Dans la liste, choisir Mode création,
  • Activer l'onglet Format de la fenêtre de propriétés du formulaire,
  • Régler les propriétés Afficher sélecteur et boutons de déplacement sur Non,
  • De même, régler la propriété bouton Fermer sur Non,
  • Puis, enregistrer les modifications (CTRL + S),
Propriétés pour masquer certains outils sur formulaire Access en mode exécution

De même, des réglages de mise en forme peuvent être entrepris pour soigner l'apparence du formulaire. Le ruban contextuel Format offre tous les outils nécessaires, comme nous l'avait appris la formation pour personnaliser les formulaires Access.
  • Dans le ruban Accueil, cliquer sur la flèche du bouton Affichage,
  • Dans la liste, choisir Mode formulaire,
Pour exécuter un formulaire, il est aussi possible d'enfoncer la touche F5 du clavier. Comme vous le constatez, le formulaire est désormais épuré. Le sélecteur et la barre de déplacement ont disparu. Nous sommes en train de construire un outil dédié uniquement à la création de nouveaux enregistrements.

Formulaire Access épuré pour permettre création de nouveaux biens immobilier dans table de base de données

Contrairement aux cases à cocher, toutes les informations des zones de saisie sont requises. Il est important de fixer quelques règles de validité afin de contrôler la saisie sur le formulaire. L'objectif est bien sûr de sécuriser l'application pour éviter d'insérer des données erronées ou incomplètes. Il faut savoir néanmoins que ces contrôles se déclenchent à validation de l'enregistrement complet. Pour des vérifications au fil de la saisie, il est nécessaire de gérer les évènements avec le code VBA Access.
  • Cliquer sur la flèche du bouton Affichage et choisir Mode création dans la liste,
  • Sélectionner le champ bien_ville sur le formulaire,
  • Activer l'onglet Données de sa feuille de propriétés,
  • Régler sa propriété Valide si sur l'expression suivante : <>'',
De la sorte, nous nous assurons que le champ n'est pas vide.
  • Ajouter l'indication suivante dans la propriété Message si erreur : La ville doit être renseignée,
Règles de validité sur formulaire Access pour contrôler la saisie et déclencher alerte si erreur

Nous paramétrons ainsi l'information à afficher et destinée au concepteur, en cas de non-conformité de saisie dans ce champ.

Pour les champs bien_superficie, bien_nb_pieces et bien_prix, il peut être intéressant de contrôler que la saisie est bien un nombre positif strictement. La règle est donc la suivante : >0. A vous de choisir les messages d'erreur associés. Pour le champ bien_distance, l'inégalité stricte n'est pas conseillée. Le bien peut se situer dans la localité exacte. Cette règle est donc conseillée : >=0.

Insérer un nouvel enregistrement
Pour valider la création d'un nouveau bien renseigné, il est nécessaire de générer un évènement. Cet évènement peut simplement consister à fermer le formulaire.
  • Cliquer sur l'onglet Création en haut de la fenêtre Access pour activer son ruban,
  • Dans la liste des contrôles, choisir le bouton,
Bouton de formulaire Access pour déclencher des actions
  • Puis, tracer un rectangle sur un emplacement vide du formulaire,
  • Cliquer sur le bouton Annuler de l'assistant qui se déclenche automatiquement,
Nous pourrions en effet lui associer une action prédéfinie. En l'occurrence, il s'agit de l'action Fermer un formulaire. Mais nous préférons maîtriser ce que nous entreprenons. C'est pourquoi, nous choisissons d'associer des actions de macro à ce bouton.
  • Activer l'onglet Autres de la feuille de propriétés de ce bouton,
  • Dans sa propriété Nom, saisir : Inserer1,
Les noms d'objets doivent être explicites.
  • Activer l'onglet Toutes de sa feuille de propriétés,
  • Dans sa propriété Légende, saisir le texte suivant : Insérer et Fermer,
Nous venons de modifier l'intitulé du bouton.
  • Activer désormais l'onglet Evènement de sa feuille de propriétés,
  • Cliquer sur le petit bouton de son évènement Au clic,
  • Dans la boîte de dialogue qui apparaît, choisir Générateur de macro et cliquer sur Ok,
Nous basculons ainsi dans l'éditeur de macros. Il permet d'empiler les actions à exécuter sur ordre, soit au clic sur le bouton ici.
  • A l'aide de la liste déroulante, choisir l'action FermerFenêtre,
  • Dans la zone Nom d'objet, désigner le formulaire Ajouter_Biens,
  • Dans la zone Enregistrer, choisir Non,
Action de macro Access pour fermer formulaire et ajouter nouvel enregistrement dans table

Nous évitons ainsi tout déclenchement de message de confirmation. Aucune modification de structure n'est entreprise. Seul un enregistrement doit être ajouté dans la table source.
  • En haut de l'éditeur de macro, cliquer sur le bouton Enregistrer,
  • Puis, cliquer sur le bouton Fermer,
Nous sommes de retour sur le formulaire.
  • Enfoncer la touche F5 du clavier pour l'exécuter,
  • Dans le champ bien_ville, saisir par exemple : Montélimar,
  • Dans le champ bien_superficie, saisir : 125,
  • Dans le champ bien_nb_pieces, taper : 5,
  • Dans le champ bien_prix, saisir : 265000,
Vous remarquez que les informations de champs sont formatées tour à tour. Il s'agit de formats que nous avions prédéfinis dans les réglages de la table.
  • Cliquer alors sur le bouton Insérer et fermer,
Le formulaire disparaît en effet. Cette action est susceptible d'avoir validé l'insertion du nouvel enregistrement.
  • Dans le volet des objets Access, double cliquer sur la table Biens pour afficher son contenu,
  • Puis, atteindre le dernier enregistrement,
Nouvel enregistrement ajouté dans table source par formulaire insertion Access

Vous constatez en effet la présence du nouveau bien que nous venons de renseigner. Nous avons choisi une action de macro qui est identique à l'une de celles que proposait l'assistant formulaire. L'objectif est de pouvoir combiner les actions pour autoriser la fermeture dès lors que tous les contrôles ont été opérés. C'est ce que nous avions mis en oeuvre dans la formation pour créer un formulaire d'ajout. Il s'agit notamment d'intégrer des instructions conditionnelles. Nous n'y reviendrons donc pas ici. Mais sachez que l'insertion n'est pas complètement sécurisée. Des enregistrements incomplets peuvent très bien être ajoutés sans contrôle préalable.
  • Fermer la table Biens en cliquant sur la croix de son onglet,
  • Dans le volet des objets Access, cliquer droit sur le formulaire Ajouter_Biens,
  • Dans le menu contextuel, choisir Mode création,
  • Sélectionner le bouton Insérer et fermer,
  • Le copier (CTRL + C) puis le coller (CTRL + V),
  • Placer la copie sur la même horizontale que le bouton d'origine,
  • Régler sa propriété Nom sur Inserer2,
  • Puis modifier sa propriété Légende : Insérer,
L'objectif est effectivement de permettre la création d'un nouveau bien sans fermer le formulaire. D'autres peuvent ainsi être créés dans l'enchaînement.
  • Activer l'onglet Evènement de sa feuille de propriétés,
Comme vous le constatez, grâce au copier-coller, le bouton dupliqué a hérité de la même macro. Et nous souhaitons compléter cette dernière. Il s'agit de rouvrir le formulaire après fermeture. Ainsi, la création de l'enregistrement sera bien validée. Et puis, le formulaire sera rouvert, vierge de toute information, prêt à la saisie d'un nouveau bien.
  • Cliquer sur le petit bouton de son évènement Au clic,
Nous sommes de retour dans l'éditeur de macro. Et nous constatons la présence de l'action que nous avions paramétrée.
  • Avec la liste déroulante, ajouter l'action OuvrirFormulaire,
  • Dans la zone Nom de formulaire, désigner le formulaire Ajouter_Biens,
  • Dans le ruban, cliquer sur le bouton Enregistrer puis sur le bouton Fermer,
Action de macro Access pour rouvrir formulaire réinitialisé après avoir ajouté enregistrement dans table
  • De retour sur le formulaire, l'enregistrer (CTRL + S) puis l'exécuter (F5),
  • Renseigner alors tous les champs pour la création d'un nouveau bien,
  • Puis, cliquer sur le bouton Insérer,
Les opérations semblent transparentes pour l'utilisateur. Le formulaire ne semble pas s'être fermé. C'est bien le cas pourtant. Mais il a été rechargé. De fait, vide de toute donnée, il est prêt à accueillir les informations pour un nouveau bien.

Ajouter des données dans table Access par formulaire et actions de macro

Si vous affichez la fin des enregistrements de la table Biens, vous constatez en effet la présence de la nouvelle offre. Voilà donc la possibilité automatisée qu'offre Access pour créer simplement un formulaire permettant l'ajout de nouveaux enregistrements.

 
Sur Facebook
Sur Youtube
Les livres
Contact
Mentions légales



Abonnement à la chaîne Youtube
Partager la formation
Partager sur Facebook
Partager sur Twitter
Partager sur LinkedIn