Se connecter avec Microsoft
S'identifier ou créer un compte.
Bonjour,
Sélectionnez un autre compte.
Vous avez plusieurs comptes
Choisissez le compte avec lequel vous voulez vous connecter.

Vous pouvez utiliser l’action de macro SearchForRecord dans les bases de données de bureau Access pour rechercher un enregistrement spécifique dans une table, une requête, un formulaire ou un état.

Paramètre

L’action de macro SearchForRecord contient les arguments suivants.

Argument de l’action

Description

Type d’objet

Entrez ou sélectionnez le type d’objet de base de données dans lequel vous recherchez. Vous pouvez sélectionner Table, Requête, Formulaire ou État.

Nom de l’objet

Entrez ou sélectionnez l’objet spécifique qui contient l’enregistrement à rechercher. La liste déroulante affiche tous les objets de base de données du type que vous avez sélectionné pour l’argument Type d’objet .

Enregistrer

Spécifiez le point de départ et la direction de la recherche.

Paramètre

Description

Précédent

Effectuez une recherche vers l’arrière à partir de l’enregistrement actif.

Suivant

Recherche vers l’avant à partir de l’enregistrement actif.

Prénom

Recherche vers l’avant à partir du premier enregistrement. Il s’agit de la valeur par défaut de cet argument.

Nom

Effectuez une recherche vers l’arrière à partir du dernier enregistrement.

Where Condition

Entrez les critères de la recherche en utilisant la même syntaxe qu’une clause SQL WHERE, uniquement sans le mot « WHERE ». Par exemple,

Description = "Beverages"

Pour créer un critère qui inclut une valeur à partir d’une zone de texte sur un formulaire, vous devez créer une expression qui concatène la première partie du critère avec le nom de la zone de texte contenant la valeur pour laquelle effectuer la recherche. Par exemple, le critère suivant recherche dans le champ Description la valeur dans la zone de texte nommée txtDescription sous le formulaire nommé frmCategories. Notez le signe égal (=) au début de l’expression et l’utilisation de guillemets simples (') de chaque côté de la référence de zone de texte :

="Description = '" & Forms![frmCategories]![txtDescription] & "'"

Remarques

  • Dans les cas où plusieurs enregistrements correspondent aux critères de l’argument Condition Where , les facteurs suivants déterminent l’enregistrement trouvé :

    • Paramètre de l’argument Record    Pour plus d’informations sur l’argument Record , consultez le tableau de la section Paramètres.

    • Ordre de tri des enregistrements    Par exemple, si l’argument Record est défini sur First, la modification de l’ordre de tri des enregistrements peut modifier l’enregistrement trouvé.

  • L’objet spécifié dans l’argument Nom de l’objet doit être ouvert avant l’exécution de cette action. Sinon, une erreur se produit.

  • Si les critères de l’argument Condition Where ne sont pas remplis, aucune erreur ne se produit et le focus reste sur l’enregistrement actif.

  • Lors de la recherche de l’enregistrement précédent ou suivant, la recherche ne « wrappe » pas lorsqu’elle atteint la fin des données. Si aucun autre enregistrement ne correspond aux critères, aucune erreur ne se produit et le focus reste sur l’enregistrement actif. Pour confirmer qu’une correspondance a été trouvée, vous pouvez entrer une condition pour l’action suivante et rendre la condition identique aux critères de l’argument Condition Where .

  • Pour exécuter l’action SearchForRecord dans un module VBA, utilisez la méthode SearchForRecord de l’objet DoCmd .

  • L’action de macro SearchForRecord est similaire à l’action de macro RechercherEnregistrement, mais SearchForRecord offre des fonctionnalités de recherche plus puissantes. L’action de macro RechercherEnregistrement est principalement utilisée pour rechercher des chaînes, et elle duplique les fonctionnalités de la boîte de dialogue Rechercher . L’action de macro SearchForRecord utilise des critères qui ressemblent davantage à ceux d’un filtre ou d’une requête SQL. La liste suivante illustre certaines choses que vous pouvez effectuer avec l’action de macro SearchForRecord :

    • Vous pouvez utiliser des critères complexes dans l’argument Condition Where , comme

Description = « Beverages » et CategoryID = 11

  • Vous pouvez faire référence à des champs qui se trouvent dans la source d’enregistrement d’un formulaire ou d’un état, mais qui ne sont pas affichés dans le formulaire ou l’état. Dans l’exemple précédent, ni Description ni CategoryID ne doivent être affichés sur le formulaire ou l’état pour que les critères fonctionnent.

  • Vous pouvez utiliser des opérateurs logiques, tels que <, >, AND, OR et BETWEEN. L’action RechercherEnregistrement correspond uniquement aux chaînes qui sont égales, commencent par ou contiennent la chaîne recherchée.

Exemple

La macro suivante ouvre d’abord la table Categories à l’aide de l’action OuvrirTable . La macro utilise ensuite l’action de macro SearchForRecord pour rechercher le premier enregistrement dans la table où le champ Description est égal à « Boissons ».

Action

Arguments

OpenTable

Nom de la table : Catégories

Affichage : Feuille de données

Mode données : Modifier

SearchForRecord

Type d’objet : Table

Nom de l’objet : Catégories

Enregistrement : First

Where Condition : Description = « Beverages »

Besoin d’aide ?

Vous voulez plus d’options ?

Explorez les avantages de l’abonnement, parcourez les cours de formation, découvrez comment sécuriser votre appareil, etc.

Les communautés vous permettent de poser des questions et d'y répondre, de donner vos commentaires et de bénéficier de l'avis d'experts aux connaissances approfondies.

Ces informations vous ont-elles été utiles ?

Dans quelle mesure êtes-vous satisfait(e) de la qualité de la langue ?
Qu’est-ce qui a affecté votre expérience ?
En cliquant sur Envoyer, vos commentaires seront utilisés pour améliorer les produits et services de Microsoft. Votre administrateur informatique sera en mesure de collecter ces données. Déclaration de confidentialité.

Nous vous remercions de vos commentaires.

×