Magazine Informatique

Utiliser les champs calculés sous Access

Publié le 28 mai 2013 par Lydia Provin @Votreassistante

Sur Access, vous avez la possibilité de réaliser des calculs comme sur Excel grâce aux champs calculés. Cela sera notamment utile si vous créez vos factures sur ce logiciel.

Pour ce tutoriel, je vais réutiliser la base de données utilisée lors du tutoriel sur les relations entre les tables Access dans lequel j'avais calculé directement le Total HT, la TVA et le Total TTC. J'ai donc supprimé complètement les colonnes après le Prix unitaire.

Je peux insérer un champ calculé dans une table, une requête, un formulaire ou un état.

Créer un champ calculé dans une table :

Nous allons d'abord créer ce champ calculé pour une table : la Table Factures.

Je commence par ouvrir la Table Factures et reste dans le Mode Feuille de données. À la colonne la plus à droite, après le Prix unitaire, je peux ajouter des colonnes. Je clique sur la petite flèche du champ Cliquer pour ajouter

Utiliser les champs calculés sous Access
. Je choisis Champ calculé > Nombre
Utiliser les champs calculés sous Access
. Au moment du clic, j'ai une boîte de dialogue qui apparaît : le Générateur d'expression.

Utiliser les champs calculés sous Access

En cliquant sur le bouton Plus >> ou Moins << vous pouvez faire apparaître ou disparaître les éléments, les catégories ou les valeurs d'expression.

Mon but pour le champ Total HT étant de multiplier la Quantité par le Prix unitaire, mon calcul doit être Quantité x Prix unitaire. Je double-clique sur Quantité dans les Catégories d'expressions (vous pouvez aussi le saisir directement mais n'oubliez pas les crochets), puis, j'appuie sur le signe * du clavier numérique ou alphanumérique, et, toujours dans les Catégories d'expressions, je double-clique sur Prix unitaire. Mon expression est terminée, je clique sur Ok. Mon champ se nomme pour l'instant Champ1, je le renomme en Total HT simplement en double-cliquant sur le titre du champ ou en cliquant droit Renommer le champ

Utiliser les champs calculés sous Access
.

Pour le moment, les totaux ne sont pas dans le même format que le Prix unitaire mais nous allons le modifier par la suite. Pour l'instant, nous allons faire de même pour les 2 autres champs.

Je clique sur la flèche de la colonne Cliquer pour ajouter, puis Champ calculé > Nombre. Cette fois-ci, je souhaite calculer le montant de la TVA. Je double-clique sur Total HT dans les Catégories d'expressions, j'appuie sur le signe * et saisis 0,196 (qui correspond à 19,6 %). Je clique sur Ok et renomme mon champ en TVA.

Je recommence pour le dernier champ et, dans la boîte de dialogue, pour calculer le montant TTC, je double-clique sur Total HT, saisis le signe + et double-clique sur TVA. Je clique sur Ok et renomme mon champ Total TTC. Maintenant, je vais modifier le format de ces 3 champs en me rendant dans le Mode Création en cliquant sur

Utiliser les champs calculés sous Access
ou sur la flèche du bouton Affichage > Mode Création
Utiliser les champs calculés sous Access
. Je me place sur un des champs et, dans les Propriétés du champ du bas de l'écran, à l'onglet Général, je clique sur la ligne Format pour faire apparaître la flèche du menu déroulant et choisis Monétaire.

Je fais de même pour les 2 autres champs.

Je retourne dans le Mode Feuille de données soit en cliquant sur le bouton Affichage

Utiliser les champs calculés sous Access
soit sur la flèche du bouton Affichage > Mode Feuille de données
Utiliser les champs calculés sous Access
. On me demande si je souhaite enregistrer, je clique sur Oui. J'ai bien mes 3 champs calculés. Si je change une quantité ou un prix unitaire, les champs se calculent automatiquement. Si le taux de TVA venait à changer, il suffirait de cliquer sur le champ TVA, dans l'onglet Champs, et de cliquer sur Modifier l'expression
Utiliser les champs calculés sous Access
. La boîte de dialogue du générateur d'expression s'ouvrirait et je pourrais modifier la valeur fixe. Même s'il y a peu de chance que cela arrive, je remplace 0,196 par 0,1 pour 10 % et mon champ Total TTC se met à jour quand je clique sur Ok.

À noter qu'avec les champs calculés dans les tables vous ne pouvez pas calculer des champs provenant d'autres tables contrairement aux requêtes.

Créer un champ calculé dans une requête :

Nous allons maintenant créer un champ calculé dans une requête. Je supprime d'abord les 3 champs que je viens de créer pour ne pas avoir quelque chose de brouillon en ayant des doublons mais vous pouvez bien sûr combiner un champ calculé de table et un champ calculé de requête.

Pour cela, je crée une requête. Je ne rentre pas dans le détail, vous pouvez voir ou revoir le tutoriel sur la création d'une requête Access si vous ne vous en rappelez pas.

Je crée cette requête avec la Table Factures et clique sur chaque champ pour les faire apparaître dans la requête. Puis, je me place sur le premier champ vide à droite et saisis mon expression. Je vais simplement recréer les champs supprimés. À la ligne Champ, j'indique l'expression suivante : Total HT : [Quantité]*[Prix unitaire]. Ce qui précède les deux points sera le titre du champ, les deux points indiquent à Access qu'il s'agit d'un calcul et les crochets indiquent les champs à utiliser. Je m'assure que la case Afficher est cochée et, si je clique sur Exécuter

Utiliser les champs calculés sous Access
, mon champ est bien créé et calculé.

Je retourne en Mode Création en cliquant sur le bouton

Utiliser les champs calculés sous Access
ou sur la flèche du bouton Affichage > Mode Création
Utiliser les champs calculés sous Access
. Je fais de même pour les 2 autres champs. Je peux utiliser le résultat d'un champ calculé pour calculer un autre champ. La colonne suivante comportera l'expression suivante : TVA : [Total HT]*0,196. La colonne qui suit contiendra l'expression : Total TTC : [Total HT]+[TVA].

Je peux modifier les valeurs fixes, elles seront mises à jour dans la Table Factures et les champs calculés seront calculés automatiquement.

Créer un champ calculé dans un formulaire :

Nous allons maintenant créer un champ calculé dans un formulaire. Pour cela, je crée un formulaire avec la Table Factures. Je ne rentre pas non plus dans le détail, vous pouvez voir ou revoir le tutoriel sur la création d'un formulaire Access si vous ne vous en rappelez pas. Je sélectionne tous les champs de la Table Factures et l'affiche en colonne simple. Je passe ensuite en Mode Création en cliquant sur la flèche du bouton Affichage > Mode Création

Utiliser les champs calculés sous Access
. J'agrandis la Zone Détail pour pouvoir placer les champs. Dans l'onglet Création, dans les Contrôles, je clique sur Zone de texte
Utiliser les champs calculés sous Access
et fais un clic sur la Zone Détail sous le Prix unitaire. Dans le cadre Indépendant, je saisis la même expression que précédemment mais avec le signe égal(=), ce qui donne =[Quantité]*[Prix unitaire]. À la place de Texte13, je saisis Total HT. Je peux modifier mon calcul soit dans le cadre directement soit en allant dans la Feuille de propriétés en cliquant sur le bouton du même nom
Utiliser les champs calculés sous Access
de l'onglet Création. À l'onglet Données > Source contrôle, j'ai bien mon calcul.

Je vais créer les 2 autres champs en procédant de même. Pour la TVA, dans le champ Texte15, je saisis TVA et, dans le cadre Indépendant, ne pouvant saisir =[Total HT]*0,196, je vais dans la Feuille de propriétés, dans l'onglet Données, à la ligne de la Source contrôle, je clique sur les 3 points

Utiliser les champs calculés sous Access
pour faire apparaître le générateur d'expressions. Le résultat du total HT étant sur un champ calculé dans le formulaire, je vais rechercher son nom en fermant la boîte de dialogue et en cliquant sur le cadre du calcul de Total HT. La Feuille de propriétés m'indique Texte13. Je clique donc sur le cadre pour calculer la TVA et retourne dans le générateur d'expression. Je double-clique sur Texte13 dans les Catégories d'expressions. L'expression est donc =[Texte13]*0,196. Je clique sur Ok.

Je fais la même chose pour le montant TTC. Je regarde d'abord le nom des éléments, il faudra additionner Texte13 et Texte15. Dans le générateur d'expression, j'indique =[Texte13] + [Texte15].

Il ne me reste plus qu'à replacer les champs correctement pour avoir un meilleur visuel. Je retourne ensuite dans le Mode Formulaire en cliquant sur le bouton

Utiliser les champs calculés sous Access
ou en cliquant sur la flèche puis Mode Formulaire
Utiliser les champs calculés sous Access
. Mes calculs sont bons, mais encore une fois le format n'est pas correct. Je retourne donc en Mode Création et je vais cliquer sur chacun des éléments pour aller modifier le Format dans la Feuilles de propriétés, à l'onglet et à la ligne Format, je choisis Monétaire. Pour terminer, je retourne en Mode Formulaire.

Créer un champ calculé dans un état :

Pour créer un champ calculé dans un état, vous pouvez faire la même chose qu'avec le formulaire. C'est-à-dire créer l'état (là aussi vous pouvez voir ou revoir le tutoriel sur la création d'un état Access si vous ne vous en rappelez pas), agrandir la Zone Détail et insérer des Zones de texte

Utiliser les champs calculés sous Access
. Vous saisirez les calculs comme pour le formulaire. Le format pourra être également modifié dans la Feuille de propriétés.

Téléchargez " Utiliser les champs calculés sous Access " au format PDF

Je vous propose un fichier annexe dans l'Espace Membres contenant la base de données utilisée dans ce tutoriel.

Utiliser les champs calculés sous Access


Retour à La Une de Logo Paperblog

A propos de l’auteur


Lydia Provin 1007 partages Voir son profil
Voir son blog