Introduction aux expressions

Important :  Cet article a été traduit automatiquement, voir l’avertissement. Vous pouvez consulter la version en anglais de cet article ici.

Vous pouvez utiliser des expressions pour une grande variété de tâches dans Microsoft Office Access 2007, comme des calculs mathématiques, la combinaison ou l’extraction de texte ou la validation de données. Cet article fournit des informations d’arrière-plan sur les expressions : utilisation, comparaison avec des formules Microsoft Office Excel et présentation de leurs composants.

Contenu de cet article

Présentation des expressions

À quoi servent les expressions ?

Comparaison d’expressions Access et de formules Excel

Composants d’une expression

Exemples d’expressions

Présentation des expressions

Une expression est une combinaison de tout ou partie des éléments suivants : fonctions prédéfinies ou définie par l'utilisateur, des identificateurs, des opérateurs et des constantes qui correspondent à une valeur unique.

Conseil : Dans Access 2010, le Générateur d'Expression contient IntelliSense, afin que vous puissiez voir quels arguments requiert votre expression.

Composants d’une expression

Par exemple, l’expression suivante contient les quatre éléments suivants :

= Somme ( [prix d'achat]) * 0, 08

Dans cet exemple, Somme () est une fonction prédéfinie, [Prix d'achat] est un identificateur, * est un opérateur mathématique et 0,08 est une constante. Cette expression peut être utilisée dans une zone de texte dans un pied de page de formulaire ou le pied d'état pour calculer la TVA pour un groupe d'éléments.

Certaines expressions peuvent être plus compliquées ou simples que cet exemple. Par exemple, cette expression Booléen ne contient qu’un opérateur et une constante :

>0

Cette expression renvoie True lorsqu’elle est comparée à un chiffre supérieur à 0 et False lorsqu’elle est comparée à un chiffre inférieur à 0. Vous pouvez utiliser cette expression dans la propriété Validation Rule d’un champ de contrôle ou de table pour être certain que seules des valeurs positives sont spécifiées.

Dans Access, les expressions sont souvent utilisées pour effectuer des calculs, manipuler des caractères ou tester des données. Les tables, requêtes, formulaires, états et macros présentent tous des propriétés acceptant une expression. Par exemple, vous pouvez utiliser des expressions dans les propriétés Control Source et Default Value d’un contrôle. Vous pouvez également utiliser des expressions dans la propriété Validation Rule d’un champ de table. En outre, lorsque vous rédigez du code Microsoft Visual Basic pour Applications (VBA) pour une procédure événementielle ou pour un module, vous utilisez souvent des expressions qui sont semblables à celles que vous utilisez dans un objet Access, comme une table ou une requête.

Remarque : Pour plus d’informations sur les composants d’une expression, voir la section Composants d’une expression, plus loin dans cet article.

Haut de la page

À quoi servent les expressions ?

Dans Access, vous pouvez utiliser des expressions pour effectuer l’une des opérations suivantes :

  • Calculer des valeurs qui n’existent pas directement parmi vos données. Vous pouvez calculer des valeurs pour les champs de requête et les contrôles dans des formulaires et des états.

  • Définir une valeur par défaut pour un champ de table ou un contrôle de formulaire ou d’état. Vos valeurs par défaut s’affichent alors chaque fois que vous ouvrez une table, un formulaire ou un état.

  • Créer une règle de validation. Les règles de validation déterminent les données que les utilisateurs peuvent entrer dans un champ ou un contrôle.

  • Spécifier des critères pour une requête.

La façon la plus courante d’utiliser des expressions dans Access est de calculer des valeurs qui n’existent pas directement dans vos données. Par exemple, vous pouvez créer dans une requête une colonne qui calcule un total de lignes et utiliser cette valeur dans un formulaire ou un état. Une colonne dans une requête qui résulte d’un tel calcul est appelée un champ calculé. Par exemple, l’expression de requête suivante calcule le total de lignes en appliquant une remise :

PrixÉtendu : CCur ( [Détails commande]. [ Prix unitaire] * [Quantité] *(1-[Discount])/100) * 100

Cette expression attribue à la colonne résultante, ou au champ calculé, le nom ExtendedPrice.

Vous ne pouvez pas créer un champ de table qui calcule automatiquement sa propre valeur. Le cas échéant, vous pouvez utiliser un champ de table pour stocker les résultats d’un calcul qui a été effectué à un autre endroit (par exemple, dans une requête ou un formulaire). Toutefois, à moins que ce ne soit nécessaire, il est plus efficace de ne stocker que les valeurs dont vous avez besoin pour effectuer un calcul et de calculer ensuite les résultats lorsque vous en avez besoin.

Par exemple, supposons que vous deviez calculer le montant total en euros d’une ligne de facturation. Plutôt que de stocker le total des lignes dans la base de données, vous le calculez lorsque vous en avez besoin à partir de deux autres éléments stockés dans la base de données : la quantité et le prix. Dans un contrôle de zone de texte de l’état Facture, l’expression suivante vous permet de calculer la valeur :

= CCur ( [Quantity]*[Price])

Cette expression multiplie la quantité par le prix et utilise la fonction CCur (conversion en devise) pour convertir le résultat en type de données Currency. Vous pouvez également calculer une remise pour chaque commande.

Vous pouvez créer un champ calculé lorsque vous devez calculer ou effectuer des opérations sur les données des champs d’au moins deux tables. Par exemple, plusieurs tables stockent les noms et prénoms dans des champs distincts. Pour combiner ces noms et prénoms et les afficher dans un seul champ, vous pouvez créer un champ calculé dans une requête. Comme nous l’avons vu plus haut, il paraît logique de créer ce type de champ calculé directement dans une table, mais les tables ne prennent pas en charge ce type d’opération. Elles ne proposent ni champ ni propriété permettant d’ajouter l’expression nécessaire.

Un champ calculé qui combine les noms et prénoms présente comme suit : [prénom] & "" & [nom]. Dans ce cas, les signes & (&) combinent la valeur dans le champ prénom , un espace (un espace entouré guillemets) et la valeur dans le champ nom .

Vous pouvez également utiliser des expressions dans Access pour fournir une valeur par défaut pour un champ dans une table ou un contrôle. Par exemple, pour définir la valeur par défaut pour un champ de date à la date du jour, tapez Date () dans la zone de propriété Valeur par défaut pour ce champ.

En outre, vous pouvez utiliser une expression pour définir une règle de validation. Par exemple, vous pouvez utiliser une règle de validation dans un contrôle ou champ de table d'exiger que la date à laquelle est entrée est supérieur ou égal à la date du jour. Dans ce cas, vous définissez la valeur dans la zone de propriété Règle de Validation> = Date ().

Une expression vous permet enfin de définir les critères d’une requête. Supposons, par exemple, que vous souhaitiez connaître les ventes de produits correspondant aux commandes expédiées durant une période spécifique. Vous pouvez spécifier des critères permettant de définir une plage de dates et Access ne renvoie que les lignes qui correspondent à ces critères. Par exemple, votre expression peut avoir l’aspect suivant :

Entre #1/1/2007 # Et # 31/12/2007 #

Lorsque vous ajoutez des critères à la requête et que vous exécutez cette dernière, seules les valeurs correspondant aux dates spécifiées sont renvoyées.

Haut de la page

Comparaison d’expressions Access et de formules Excel

Les expressions Access ressemblent à des formules Excel car les deux font appel à des éléments semblables pour produire un résultat. Les formules Excel et les expressions Access contiennent au moins un des éléments suivants :

  • Identificateurs    Dans Excel, les identificateurs sont les noms des cellules individuelles ou des plages de cellules dans un classeur, par exemple A1, B3:C6ou Feuil2! C32. Dans Access, les identificateurs sont les noms des champs de table (par exemple [Contacts]! [Prénom]), contrôles de formulaires et états (tels que Forms! [ Liste des tâches] ! [Description]), ou les propriétés de ces champs ou contrôles (tels que Forms! [ Liste des tâches] ! [Description].Largeur de colonne).

  • Opérateurs    Dans Access et Excel, les opérateurs permettent de comparer des valeurs ou d’effectuer des opérations simples sur vos données. Les symboles + (plus) ou - (minus) en sont des exemples.

  • Fonctions et arguments    Dans Access et Excel, les fonctions et arguments permettent d’exécuter des tâches impossibles avec des opérateurs uniquement ; vous pouvez, par exemple, calculer la moyenne des valeurs d’un champ ou convertir le résultat d’un calcul en un format de devise. SUM et STDEV sont des exemples de fonctions. Les arguments sont des valeurs qui fournissent des informations aux fonctions. Access et Excel proposent de nombreuses fonctions, mais les noms de fonctions semblables sont parfois différents dans les deux programmes. Par exemple, dans Excel, la fonction AVERAGE correspond à la fonction AVG dans Access.

  • Constantes    Dans Access et Excel, les constantes sont des valeurs qui ne changent pas, comme des chaînes de texte ou des nombres qui ne sont pas calculés par une expression.

Les expressions Access font appel à des opérateurs et à des constantes semblables à ceux qui sont utilisés dans les formules Excel, mais les expressions Access utilisent des fonctions et identificateurs différents. Une formule Excel ne peut être appliquée qu’à un seul endroit : une cellule dans une feuille de calcul. Toutefois, vous pouvez utiliser une expression Access à plusieurs endroits en vue d’exécuter des tâches diverses, dont les suivantes :

  • Création de contrôles calculés dans des formulaires et des états

  • Création de champs calculés dans des requêtes

  • À la place de critères dans des requêtes

  • Validation de données entrées dans un champ ou dans un contrôle d’un formulaire

  • Regroupement de données dans des rapports

Vous pouvez utiliser une expression Access ou une formule Excel pour calculer des valeurs numériques ou des valeurs de date/d’heure à l’aide d’opérateurs mathématiques. Par exemple, pour calculer une remise pour un client, utilisez la formule Excel =C2*(1-D2) ou l’expression Access = [Unit Price]*(1-[Discount]).

Vous pouvez également utiliser une expression Access ou une formule Excel pour combiner, fractionner ou manipuler des chaînes à l’aide d’opérateurs de chaîne. Par exemple, pour combiner un nom et un prénom en une chaîne, vous pouvez utiliser la formule Excel =D3 & " " & D4 ou l’expression Access = [First Name] & " " & [Last Name].

Haut de la page

Composants d’une expression

Les expressions sont composées d’identificateurs, d’opérateurs, de fonctions et d’arguments, de constantes et de valeurs. Les sections suivantes décrivent ces composants plus en détail. Les exemples fournis dans ces sections présentent également de brèves descriptions de la syntaxe des expressions.

Identificateurs

Un identificateur est le nom d'un champ, la propriété ou le contrôle. Vous utilisez un identificateur dans une expression pour faire référence à la valeur qui est associée à un champ, une propriété ou un contrôle. Par exemple, considérez l'expression = [DateRequise]-[DateExpédition]. Cette expression soustrait la valeur du champ DateExpédition ou du contrôle de la valeur du champ DateRequise ou du contrôle. Dans cette expression, DateRequise et DateExpédition servent d'identificateurs.

Opérateurs

Access prend en charge divers opérateurs, parmi lesquels des opérateurs arithmétiques courants, tels que +, -, * (multiplication) et / (division). Vous pouvez également utiliser des opérateurs de comparaison, tels que < (inférieur à) ou > (supérieur à) pour comparer des valeurs, des opérateurs de texte, tels que & et + pour concaténer (combiner) du texte, des opérateurs logiques comme Not et And pour déterminer des valeurs vraies ou fausses, et d’autres opérateurs propres à Access.

Fonctions et arguments

Les fonctions sont des procédures intégrées que vous pouvez utiliser dans vos expressions. Elles s’utilisent dans le cadre d’opérations diverses et variées, telles que le calcul de valeurs, la manipulation de texte et de dates, ainsi que la synthèse de données. Par exemple, la fonction Date, qui renvoie la date du jour, est une fonction souvent utilisée. Vous pouvez utiliser la fonction Date de diverses façons, comme dans une expression qui définit la valeur par défaut d’un champ d’une table. Dans cet exemple, si un utilisateur ajoute un enregistrement, la valeur du champ est paramétrée par défaut sur la date du jour.

Certaines fonctions nécessitent des arguments. Un argument est une valeur qui fournit une entrée à la fonction. Si une fonction nécessite plusieurs arguments, il est nécessaire de séparer les arguments d'une virgule. Prenons l'exemple de la fonction Date dans l'exemple d'expression suivant :

= Format ( Date(), « mmmm d, yyyy »)

Cet exemple utilise deux arguments. Le premier argument est le Date (fonction) , qui renvoie la date actuelle. Le deuxième argument ("j MMMM aaaa"), qui est séparé par le premier argument par une virgule, spécifie une chaîne de texte pour indiquer la mise en forme de la valeur renvoyée de la date à la fonction Format . Notez que la chaîne de texte doit être placés entre guillemets. Cette expression illustre également que vous pouvez utiliser souvent la valeur renvoyée par une fonction en tant qu'argument à une autre fonction. Dans ce cas, Date () se comporte comme un argument.

Vous trouverez des liens vers des informations supplémentaires sur la syntaxe des fonctions et expressions dans la section Voir aussi.

Constantes

Une constante est un élément dont la valeur ne change pas tant qu’Access est actif. Les constantes True, False et Null sont souvent utilisées dans des expressions. Vous pouvez également définir vos propres constantes en code VBA et les utiliser dans des procédures VBA. VBA est le langage de programmation utilisé par Access.

Remarque : Vous ne pouvez pas utiliser de constantes VBA dans les fonctions personnalisées utilisées dans des expressions. Par exemple, VBA intègre des constantes pour les jours de la semaine : vbSunday représente Dimanche, vbMonday représente Lundi, et ainsi de suite. Chaque constante correspond à une valeur numérique. Par exemple, la valeur numérique de vbSunday est 1, celle de vbMonday est 2, etc. Vous ne pouvez pas utiliser ces constantes dans une fonction personnalisée appelée à partir d’une expression. Vous devez plutôt utiliser des valeurs numériques.

Valeurs

Vous pouvez utiliser des valeurs littérales dans vos expressions, telles que le nombre 1 254 ou la chaîne « Entrez un chiffre compris entre 1 et 10. ». Vous pouvez utiliser des valeurs numériques, qui peuvent représenter une série de chiffres, y compris un signe et une virgule décimale, si cela est nécessaire. En l’absence de signe, Access identifie une valeur positive. Pour spécifier une valeur négative, ajoutez le signe moins (-). Vous pouvez également utiliser une notation scientifique. Pour cela, ajoutez la lettre « E » ou « e » suivie du signe de l’exposant (par exemple, 1,0E-6).

Lorsque vous utilisez des chaînes de texte en tant que constantes, placez-les entre guillemets pour vous assurer qu’Access les interprète correctement. Dans certains cas, Access insère les guillemets. Par exemple, lorsque vous tapez du texte dans une expression pour rédiger une règle de validation ou les critères d’une requête, Access inclut automatiquement vos chaînes de texte entre guillemets.

Par exemple, si vous tapez le terme Paris, Access affiche "Paris" dans l’expression. Si vous souhaitez qu’une expression produise une chaîne entre guillemets, il convient d’inclure la chaîne imbriquée entre guillemets simples () ou entre trois guillemets doubles ("). Par exemple, les expressions suivantes sont équivalentes :

Formulaires ! [ Contacts] ! [Ville]. Valeur par défaut = '"Paris" '

Formulaires ! [ Contacts] ! [Ville]. Valeur par défaut = " " "Paris" " "

Pour utiliser des valeurs de date/d’heure, vous devez inclure les valeurs entre des signes dièse (#). Par exemple, #3-7-07#, #7-Mar-07# et #Mar-7-2007# sont des valeurs valides de date/d’heure. Lorsqu’Access rencontre une valeur de date/d’heure comprise entre des caractères #, elle traite automatiquement la valeur comme un type de données Date/Time.

Haut de la page

Exemples d’expressions

Le tableau suivant présente certains exemples d’expressions Access et la façon dont elles sont généralement utilisées :

Expression

Objectif

=[DateRequise]-[DateEnvoi]

Calcule la différence entre les valeurs de date figurant dans deux contrôles de zones de texte (intitulés DateRequise et DateExpédition) d’un état.

Date()

Définit la valeur par défaut d’un champ de table de type Date/Heure à la date du jour.

PrixPondéré: CMonnaie([Détails de commande].Prix unitaire*[Quantité]*(1-[Remise])/100)*100

Crée un champ calculé appelé PrixPondéré dans une requête.

Between #1/1/2007# And #12/31/2007#

Spécifie les critères d’un champ Date/Heure dans une requête.

=[Orders Subform].Form!OrderSubtotal

Renvoie la valeur du contrôle Sous-totalCommande du sous-formulaire Commandes se trouvant dans le formulaire Commandes.

>0

Définit une règle de validation pour un champ numérique de table (les utilisateurs doivent entrer des valeurs supérieures à zéro). 

Certaines expressions commencent par l’opérateur égal (=) et d’autres non. Lorsque vous calculez une valeur pour un contrôle d’un formulaire ou d’un état, vous utilisez l’opérateur = en début d’expression. Dans d’autres cas, lorsque vous tapez une expression dans une requête ou dans la propriété DefaultValue ou ValidationRule d’un champ ou d’un contrôle, vous n’utilisez pas l’opérateur = à moins que vous n’ajoutiez l’expression à un champ Texte d’une table. Dans certains cas, comme lorsque vous ajoutez des expressions à des requêtes, Access supprime automatiquement l’opérateur =.

Remarque : Avertissement traduction automatique : cet article a été traduit par un ordinateur, sans intervention humaine. Microsoft propose cette traduction automatique pour offrir aux personnes ne maîtrisant pas l’anglais l’accès au contenu relatif aux produits, services et technologies Microsoft. Comme cet article a été traduit automatiquement, il risque de contenir des erreurs de grammaire, de syntaxe ou de terminologie.

Développez vos compétences
Découvrez des formations
Accédez aux nouvelles fonctionnalités en avant-première
Rejoignez le programme Office Insider

Ces informations vous ont-elles été utiles ?

Nous vous remercions pour vos commentaires.

Merci pour vos commentaires. Il serait vraisemblablement utile pour vous de contacter l’un de nos agents du support Office.

×