Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
S’applique à : Access 2013, Office 2013
L’action RechercherEnregistrement permet de rechercher un enregistrement spécifique dans une table, une requête, un formulaire ou un état.
Setting
L’action RechercherEnregistrement accepte 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 souhaitez effectuer votre recherche. 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 sélectionné pour l'argument Type d'objet. |
||||||||||
Enregistrement |
Spécifiez le point de départ et la direction de la recherche.
|
||||||||||
Condition Where |
Entrez les critères de recherche en utilisant la même syntaxe que celle d’une clause SQL WHERE, sans le mot « WHERE ». Par exemple, 'Description = « Beverages"' Pour créer un critère qui comprend une valeur dans une zone de texte d'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 à rechercher. Par exemple, le critère suivant recherche le champ Description de la valeur dans la zone de texte txtDescription du formulaire frmCategories. Notez le signe égal (=) au début de l’expression et l’utilisation de guillemets simples (') pour encadrer la référence à la zone de texte : '="Description = ' " & Forms ! [frmCategories] ! [txtDescription] & « '"' |
Remarques
Lorsque plusieurs enregistrements correspondent aux critères dans l’argument Condition Where, les facteurs suivants déterminent l’enregistrement trouvé :
La définition de l’argument RecordVoir la table dans la section Paramètres pour plus d’informations sur l’argument Record.
L’ordre de tri des enregistrements Par exemple, si l’argument Record est défini sur First, le fait de changer l’ordre de tri des enregistrements peut permettre de trouver un autre enregistrement.
Vous devez ouvrir l'objet spécifié dans l'argument Nom de l'objet avant d'exécuter 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.
Si vous recherchez l'enregistrement suivant ou précédent, la recherche s'arrête 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'un enregistrement a été trouvé, entrez une condition pour l'action suivante, en faisant en sorte que la condition soit la même que les critères de l'argument Condition Where.
Pour exécuter l'action RechercherEnregistrement dans un module VBA, utilisez la méthode RechercherEnregistrement de l'objet DoCmd.
L'action RechercherEnregistrement est similaire à l'action TrouverEnregistrement, à la différence près que RechercherEnregistrement comporte des fonctionnalités de recherche plus puissantes. L'action RechercherEnregistrement est essentiellement destinée à la recherche de chaînes et elle reproduit la fonctionnalité de la boîte de dialogue Rechercher. L'action RechercherEnregistrement utilise des critères similaires à ceux d'un filtre ou d'une requête SQL. La liste ci-après illustre certaines opérations que vous pouvez effectuer à l'aide de l'action RechercherEnregistrement:
Vous pouvez utiliser des critères complexes dans l'argument Condition Where, tels que :
Description = "Beverages" and CategoryID = 11Vous pouvez faire référence à des champs qui se trouvent dans la source d'enregistrement d'un formulaire ou d'un état mais qui n'apparaissent pas dans le formulaire ou l'état. Dans l’exemple précédent, ni Description ni CategoryID ne doivent apparaître dans le formulaire ou l’état pour que les critères fonctionnent.
Vous pouvez utiliser des opérateurs logiques, tels que <, >, ET, OU et ENTRE. L’action TrouverEnregistrement ne produit que des résultats qui sont égaux à, commencent par ou contiennent la chaîne recherchée.
Exemple
La macro suivante ouvre d'abord la table Catégories en utilisant l'action OuvrirTable. Elle utilise ensuite l’action RechercherEnregistrement pour rechercher le premier enregistrement dans la table pour lequel le champ Description correspond à « Boissons ».
Action |
Arguments |
|---|---|
OpenTable |
Nom de la table :Categories View : DatasheetMode de données : Modifier |
SearchForRecord |
Type d’objet : TableNom de l’objet : CategoriesRecord : FirstWhere Condition : Description = « Beverages » |