DéfinirValeur, action de macro

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

Vous pouvez utiliser l’action de macro DéfinirValeur pour définir la valeur d’un accès champcontrôle et/ou propriété sur un formulaire, un formulaire feuille de données ou un état.

Remarque : Vous ne pouvez pas utiliser l’action de macro DéfinirValeur pour définir la valeur d’une propriété Access qui renvoie un objet.

Remarque : Cette action ne sera pas autorisée si la base de données n’est pas fiable.

Paramètre

L’action de macro DéfinirValeur accepte les arguments suivants.

Argument de l’action

Description

Élément

Le nom du champ, du contrôle ou de la propriété dont vous souhaitez définir la valeur. Entrez le nom de champ, du contrôle ou propriété dans la zone élément dans la section Arguments d’Action de la fenêtre de création de macro. Vous devez utiliser la syntaxe complète pour faire référence à cet élément, telles que nom contrôle (pour un contrôle dans le formulaire ou l’état à partir duquel la macro a été appelée) ou formulaires ! formulaire! nom contrôle. Il s’agit d’un argument obligatoire.

Expression

La expression Access utilise pour définir la valeur pour cet élément. Vous devez toujours utiliser la syntaxe complète pour faire référence à tous les objets dans l’expression. Par exemple, pour augmenter la valeur d’un contrôle salaire sur un formulaire employés à 10 pour cent, utilisez Forms!Employees!Salary*1.1. Il s’agit d’un argument obligatoire.

Remarque : Vous n’utilisez pas un signe égal (=) avant l’expression dans cet argument. Si vous le faites, Access évalue l’expression, puis utilise cette valeur en tant que l’expression dans cet argument. Cela peut entraîner des résultats inattendus si l’expression est une chaîne.

Par exemple, si vous tapez = « Chaîne1 » pour cet argument, Access évalue d’abord l’expression comme Chaîne1. Il utilise ensuite Chaîne1 comme expression dans cet argument, s’attendant à trouver un contrôle ou propriété nommé Chaîne1 dans le formulaire ou l’état qui a appelé la macro.

Remarque : Dans une base de données Access (.mdb ou .accdb), cliquez sur le bouton Générer pour utiliser le Générateur d’Expression pour créer une expression pour un des arguments.

Remarques

Cette action vous permet de définir une valeur pour un champ ou un contrôle sur un formulaire, une feuille de données de formulaire ou un rapport. Vous pouvez également définir la valeur pour presque toutes les contrôle de formulaire et propriétés du rapport dans n’importe quel affichage. Pour déterminer si une propriété particulière peut être définie en utilisant une macro et les modes d’affichage, il peut être défini dans, consultez la rubrique d’aide pour cette propriété dans Visual Basic Editor.

Vous pouvez également définir la valeur d’un champ de table sous-jacente d’un formulaire, même si le formulaire n’est pas un contrôle lié au champ. Utilisez la syntaxe Forms ! formulaire! fieldname dans la zone élément pour définir la valeur pour ce type de champ. Vous pouvez également faire référence à un champ de table sous-jacente d’un état en utilisant la syntaxe rapports ! NomÉtat! NomChamp, mais il doit être un contrôle de l’état lié à ce champ ou le champ doit être référencé dans un contrôle calculé dans le rapport.

Si vous définissez la valeur d’un contrôle sur un formulaire, l’action de macro DéfinirValeur ne déclenche pas les règles de validation au niveau du formulaire du contrôle, mais elle déclenche les règles de validation de niveau table du champ sous-jacent si le contrôle est un contrôle dépendant. L’action de macro DéfinirValeur déclenche également le recalcul, mais le recalcul n’ait pas lieu immédiatement. Pour déclencher la mise à jour immédiate et forcer l’exécution du recalcul, utilisez l’action de macro RedessinerObjet . La valeur que vous définissez dans un contrôle à l’aide de l’action de macro DéfinirValeur n’est également pas affectée par un masque de saisie défini dans le contrôle ou sous-jacent propriété masque de saisie du champ.

Pour modifier la valeur d’un contrôle, vous pouvez utiliser l’action DéfinirValeur dans une macro spécifiée par la propriété du contrôle Après MAJ événement. Toutefois, vous ne pouvez pas utiliser l’action DéfinirValeur dans une macro spécifiée par propriété d’événement Avant MAJ d’un contrôle pour modifier la valeur du contrôle (bien que vous pouvez utiliser l’action DéfinirValeur pour modifier la valeur d’autres contrôles). Vous pouvez également utiliser l’action DéfinirValeur dans une macro spécifiée par la propriété Avant MAJ ou Après MAJ d’un formulaire pour modifier la valeur de tous les contrôles de l’enregistrement actif.

Remarque : Vous ne pouvez pas utiliser l’action de macro DéfinirValeur pour définir la valeur des contrôles suivants :

  • Contrôles liés et contrôles calculés sur des rapports.

  • Contrôles calculés sur des formulaires.

Conseils

Vous pouvez utiliser l’action de macro DéfinirValeur pour masquer ou afficher un formulaire en mode formulaire. Entrez formulaires ! nom formulaire. Visible dans la zone élément et non ou sur Oui dans la zone d’Expression. Définition de la propriété Visible d’un formulaire modal non masque le formulaire et n’est plus modal. Paramètre Oui à la propriété affiche le formulaire et rend à nouveau modal.

Modification de la valeur d’ou l’ajout de nouvelles données dans un contrôle à l’aide de l’action DéfinirValeur dans une macro ne déclenche comme Avant MAJ, AvantInsertionou Modifier des événements qui se produisent lorsque vous modifiez ou entrez des données dans ces contrôles dans l’interface utilisateur. Ces événements n’également se produisent si vous définissez la valeur du contrôle à l’aide d’un Visual Basic pour module Applications (VBA).

Cette action n’est pas disponible dans un module VBA. Définissez la valeur directement dans VBA.

Exemple

Définir la valeur d’un contrôle en utilisant une macro

La macro suivante ouvre le formulaire Ajouter des produits à partir d’un bouton dans le formulaire fournisseurs. Elle présente l’utilisation de l’écho, Fermer, OuvrirFormulaire, DéfinirValeuret actions de macro AtteindreContrôle . L’action DéfinirValeur définit le contrôle n° fournisseur du formulaire produits dans le fournisseur actuel du formulaire fournisseurs. L’action AtteindreContrôle puis déplace le focus vers le champ CategoryID, où vous pouvez commencer à entrer des données pour le nouveau produit. Cette macro doit être attachée au bouton Ajouter des produits du formulaire fournisseurs.

Action

Arguments : paramètre

Commentaire

Écho

L’écho: Aucun

Arrêter l’actualisation de l’écran pendant l’exécution de la macro.

Fermer

Type d’objet: formulaire

Nom de l’objet: liste de produits

Enregistrer: non

Fermez le formulaire de liste de produits.

OuvrirFormulaire

Nom du formulaire: produits

Affichage: formulaire

Mode données: Ajouter

Mode fenêtre: Normal

Ouvrez le formulaire produits.

DéfinirValeur

Élément: [Forms] ! [Produits] ! [N° fournisseur]

Expression: n° fournisseur

La valeur du contrôle N° dans le fournisseur actuel du formulaire fournisseurs.

AtteindreContrôle

Nom du contrôle: CategoryID

Accédez au contrôle CategoryID.

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.

×