formateur informatique

Actualiser les données sur formulaire Access

Accueil  >  Bureautique  >  Access  >  Access Avancé  >  Actualiser les données sur formulaire Access
Livres à télécharger


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

Abonnez-vous gratuitement à la chaîne Youtube Rossetti Stéphane .
Sujets et formations similaires :


Actualiser les données sur formulaire Access

Ce nouvel exercice Access est l'occasion de mettre en pratique ce que nous avons appris sur les macros, afin d'aboutir le fonctionnement de certains formulaires. Les outils concernés sont les formulaires d'action. Leur conception est finalisée mais leur développement est en attente. En effet, jusqu'alors nous ne maitrisions pas les techniques nécessaires pour les rendre dynamiques et opérationnels. De cette manière, notre application de gestion et facturation des clients va progresser d'un pas supplémentaire.



Source et présentation de la problématique
Avant de débuter, nous devons bien entendu commencer par récupérer cette application. A chaque exercice, nous la faisons évoluer. Accès base de données protégé par mot de passe de macro Autoexec Access

Comme vous le savez, un mot de passe d'accès est demandé à l'ouverture de la base de données. C'est une macro AutoExec qui vérifie la saisie de l'utilisateur dans une boîte de dialogue. Cette dernière est générée grâce à la fonction Access BEntrée.
  • Saisir le mot de passe abc et valider avec le bouton Ok,
Automatiquement l'accès est déverrouillé et le formulaire principal de navigation apparaît. En cas de saisie erronée, la base de données aurait été fermée par la macro Access. Mais comme il s'agit d'une source externe, pas encore reconnue par le système d'exploitation, elle doit être activée. Il s'agit d'une sécurité supplémentaire du logiciel Access.
  • Cliquer sur le bouton Activer le contenu du bandeau de sécurité,
Comme l'application vient d'être regénérée, le mot de passe d'accès est de nouveau demandé. A l'avenir, il ne sera à inscrire qu'une seule fois à l'ouverture.
  • Saisir de nouveau le mot de passe abc et valider par la touche Entrée du clavier,
Ce formulaire principal offre l'accès à tous les outils permettant de consulter et modifier les données de la base. Ce sont les onglets de navigation qui permettent de les atteindre respectivement. C'est la raison pour laquelle ce formulaire est chargé à l'ouverture.

Les deux premiers onglets Produits et Clients permettent d'accéder à des outils de consultation de l'information. Ils ne nous intéressent donc pas ici. L'onglet suivant porte l'intitulé Chercher un client.

Formulaire Access pour extraire les clients selon choix département et ville avec listes déroulantes

Nous l'utiliserons à des fins commerciales pour isoler rapidement toutes les personnes d'un département, voire même d'une commune spécifique. Mais il est encore trop tôt pour engager les travaux destinés à l'aboutir.

En revanche, le formulaire suivant, accessible par l'onglet Facturation doit progresser dans cet exercice. Il n'est pas encore question de le finaliser, loin s'en faut. La tâche est encore ardue.
  • Cliquer sur la première liste déroulante pour choisir un identifiant client,
  • Cliquer sur la seconde liste déroulante pour désigner une référence article,
Choix des références client et article dans liste déroulantes de formulaire Access

Ces listes sont parfaitement chargées des contenus issus des tables respectives Clients et Produits. Néanmoins et comme vous le constatez, les informations attachées ne sont pas restituées dans les zones de texte prévues à cet effet.

Nous avions expliqué ce phénomène à l'occasion d'un exercice sur les formulaires. Nous avions exploité la fonction Access RechDom pour établir la correspondance entre le choix dans la liste et la donnée à importer. Tout est prêt donc. Mais en l'absence d'action spécifique, les données ne sont pas réactualisées. Et cette action de macro doit intervenir sur un évènement précis. Il s'agit du changement de valeur dans la liste déroulante. Voilà donc la finalité principale de cet exercice. En effet, ce dysfonctionnement est repéré sur d'autres formulaires d'actions, exactement pour la même raison.
  • Cliquer sur le dernier onglet intitulé Outils actions,
Comme vous pouvez le voir, un nouveau mot de passe barre l'accès. Mais cette fois, il s'agit d'un mot de passe administrateur, donc différent du premier. Les formulaires qu'il contient sont en effet sensibles. Ils permettent d'influer sur les données de la base.
  • Saisir le mot de passe abc123 et valider par la touche Entrée du clavier,
L'accès est ainsi déverrouillé et une nouvelle navigation en cascade, verticale cette fois, est proposée. Les deux premiers formulaires sont des outils de création. Aucune donnée n'est à rapatrier. Ils ne nous intéressent donc pas pour l'instant.

Liste déroulante de la référence produit à mettre à jour avec le formulaire Access

En revanche, les trois suivants proposent une liste déroulante à partir de laquelle il s'agit de récupérer les informations attachées. La encore, les travaux préalables ont été réalisés grâce à la fonction RechDom dans chaque zone de saisie correspondante. Il reste donc à actualiser ces informations par action de macro à déclencher sur événement.



Actualiser le formulaire par macro
Dans l'exercice précédent, nous avons appris à déclencher une macro au chargement du formulaire. L'objectif était d'en sécuriser l'accès. Et nous avons pu en constater le succès en tentant d'atteindre les formulaires d'actions. Ici, le principe est le même. Mais le contrôle concerné n'est plus le formulaire. Dans chaque cas, il s'agit de la liste déroulante. La feuille de propriétés rappelle tous les attributs qu'il est possible de régler pour le contrôle actif sur le formulaire en conception. Parmi elles figurent les évènements. Et l'un d'entre eux concerne le changement détecté dans une liste déroulante. C'est à cette occasion que nous devons déclencher notre macro pour actualiser les informations.
  • Fermer le formulaire _F_navig_principal en cliquant sur la croix de son onglet,
  • Dans le volet de navigation, cliquer droit sur le formulaire F_Commandes,
  • Dans le menu contextuel, choisir Mode création,
Nous basculons ainsi dans la vue en conception du formulaire destiné à construire les factures des clients. Dans la section Zone Client, toutes les informations attachées à l'identifiant choisi dans la liste, doivent être récupérées dynamiquement. Il en va de même dans la section Zone Produit, selon la référence article sélectionnée dans la liste.

Zones de texte du formulaire pour récolter les données attachées à la référence choisie dans la liste déroulante

A ce titre, dans cette vue en conception, vous notez l'inscription de la fonction RechDom dans chaque zone de texte. Sa syntaxe est adaptée selon la donnée à importer. C'est ce que nous évoquions précédemment. Nous n'avons plus qu'à forcer l'actualisation des informations au changement de valeur dans l'une et l'autre liste déroulante. Et la technique est triviale.

Comme vous le savez, la feuille de propriétés doit être disponible. Et c'est le bouton du même nom, dans le ruban contextuel Création, qui permet de l'afficher ou de la masquer.
  • Sélectionner la première liste déroulante, celle des clients (Id),
  • Activer l'onglet Evènement de sa feuille de propriétés,
  • Cliquer alors sur le petit bouton à l'extrémité droite de son évènement Sur changement,
Déclencher une action de macro au changement de valeur dans la liste déroulante Access

Une boîte de dialogue apparaît. Elle propose différentes solutions pour enclencher des opérations.
  • Choisir Générateur de macro et cliquer sur le bouton Ok,
Nous en avons l'habitude désormais. Nous basculons ainsi dans l'éditeur de macro Access. La liste déroulante qui se propose permet de choisir une action à déclencher sur cet évènement attaché.
  • Avec cette liste déroulante, choisir l'action AfficherTousEnreg,
Action de macro pour actualiser les données sur le formulaire Access

Et c'est tout. Fallait-il encore le savoir. Cette action a pour effet d'actualiser les sources de données et liaisons. Comme elle intervient au changement détecté dans la liste déroulante, nous devrions constater l'importation actualisée des données dans chaque zone de saisie.
  • Dans le ruban Création, cliquer sur le bouton Enregistrer puis sur le bouton Fermer,
Nous sommes de retour sur le formulaire en conception. Nous devons mettre à jour de lien entre la liste déroulante et la macro.
  • Cliquer sur l'icône de la disquette dans la barre d'accès rapide pour enregistrer,
Vous pouvez aussi réaliser le raccourci clavier CTRL + S. Nous n'en avons pas terminé. Nous devons actualiser les informations importées, de la même façon, pour la liste déroulante de la deuxième section.
  • Cliquer sur la liste déroulante des produits (Reference) pour la sélectionner,
  • Activer l'onglet Evènement de sa feuille de propriétés,
  • Cliquer sur le petit bouton de son évènement Sur changement,
  • Dans la boîte de dialogue, choisir Générateur de macro et valider par Ok,
  • Dans l'éditeur de macro, choisir l'action AfficherTousEnreg,
  • Dans le ruban Création, cliquer sur le bouton Enregistrer puis sur le bouton Fermer,
  • De retour sur le formulaire, cliquer sur le symbole de la disquette pour l'enregistrer,
  • Puis l'exécuter grâce à la touche F5 du clavier par exemple,
  • Choisir un identifiant client avec la première liste déroulante,
L'application progresse. Toutes les informations attachées du client sont respectivement importées dans les zones de saisie prévues à cet effet. Vous pouvez remarquer une adaptation des couleurs de fond selon la civilité de la personne. Il s'agit d'une mise en forme conditionnelle que nous avions bâtie à l'occasion de l'un des exercices sur les formulaires.
  • Avec la seconde liste déroulante, choisir un code article,
Là encore, grâce à l'action de macro déclenchée au changement dans la liste déroulante, toutes les données attachées du produit sont rapatriées dans les contrôles dédiés.

Importer les informations attachées aux références choisies dans les listes déroulantes du formulaire Access



Il reste encore du chemin à parcourir pour ce formulaire qui est l'outil principal de cette application. Il s'agira de consolider la commande au fil des articles achetés puis de valider la facture du client. Nous le verrons dans les prochains exercices, des interactions entre le formulaire, les macros et requêtes seront nécessaires. Malgré tout, nous avons progressé d'un pas intéressant nécessaire pour la suite.

Nous devons poursuivre la préparation de l'application. Et pour cela, la même technique doit être employée pour les formulaires d'action : F_maj_produit, F_suppr_client et F_suppr_produit. Il s'agit d'une très bonne mise en pratique à réaliser seul. Chacun offre une liste déroulante. Les fonctions RechDom sont présentes dans les contrôles attachés. Il ne reste plus qu'à déclencher l'action de macro AfficherTousEnreg au changement dans la liste, sur chacun de ces formulaires.

Actualiser données formulaires Access Actions au changement valeur dans liste déroulante

 
Sur Facebook
Sur G+
Sur Youtube
Les livres
Contact
Mentions légales



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