Lorsque vous concevez un formulaire dans Access, vous pouvez afficher une valeur à partir d’une table ou d’une requête autre que celle à laquelle votre formulaire est lié. Par exemple, supposons que vous ayez un formulaire Products lié à une table Products. Toutefois, après avoir conçu le formulaire, vous décidez que vous souhaitez que le formulaire affiche le nom du contact fournisseur pour chaque produit( données qui résident dans une table appelée Fournisseurs). La procédure suivante vous montre comment utiliser la fonction DLookup pour accomplir cette tâche. Vous pouvez modifier l’expression à l’étape 6 en fonction de vos propres données.
Ajouter la zone de texte
-
Dans le volet de navigation, cliquez avec le bouton droit sur le formulaire que vous souhaitez modifier, puis cliquez sur Mode Création dans le menu contextuel.
-
Sous l’onglet Création, dans le groupe Contrôles, cliquez sur Zone de texte.
-
Recherchez la zone dans le formulaire dans laquelle vous souhaitez ajouter le contrôle, puis faites glisser le pointeur sur le formulaire pour créer la zone de texte.
-
Cliquez avec le bouton droit sur la zone de texte, puis sélectionnez Propriétés dans le menu contextuel.
-
Dans la feuille de propriétés, cliquez sur l’onglet Tout .
-
Définissez la propriété Source de contrôle sur la valeur suivante :
=DLookup(« [ContactName] »,"[Suppliers] »,"[SupplierID]= » & Forms ! Produits! SupplierID)
-
Enregistrez vos modifications de formulaire, puis fermez la feuille de propriétés.
Cette expression recherche dans la table Suppliers et retourne le nom de contact du fournisseur dont l’ID de fournisseur correspond à la valeur dans le contrôle SupplierID sur le formulaire Products. Notez comment l’opérateur & est utilisé pour construire le troisième argument de la fonction DLookup (le troisième argument est « [SupplierID]= » & Forms ! Produits! SupplierID). Une erreur courante que vous devez éviter consiste à placer des guillemets autour de l’argument entier plutôt que autour du texte qui précède l’opérateur & .
Remarque : Au lieu d’utiliser la fonction DLookup , vous pouvez créer une requête sous-jacente pour inclure uniquement les informations dont vous avez besoin. L’utilisation d’une requête est souvent plus efficace que l’utilisation d’une fonction.