Vous pouvez utiliser l’action RechercherEnregistrer dans les bases de données de bureau Access pour rechercher la première instance de données qui répond aux critères spécifiées par les arguments FindRecord. Ces données peuvent se trouver dans le enregistrement actuel, dans un enregistrement précédent ou réussi, ou dans le premier enregistrement. Vous pouvez trouver des enregistrements dans la table active feuille de données, feuille de données de requête, feuille de données de formulaire ou formulaire.
Remarque : L’action de macro TrouverEnregistrement n’est pas disponible dans les applications web Access.
Paramètre
L’action TrouverEnregistrement accepte les arguments suivants.
Argument de l’action |
Description |
Rechercher |
Spécifie les données à rechercher dans l’enregistrement. Entrez le texte, le nombre ou la date recherchée ou tapez une expression en la faisant précéder du signe égal (=) dans la zone Rechercher de la section Arguments de l’action du volet Générateur de macro. Vous pouvez utiliser des caractères génériques. Il s’agit d’un argument obligatoire. |
Où |
Spécifie où se trouvent les données dans le champ. Vous pouvez rechercher des données dans toute partie du champ (N’importe où dans le champ), des données qui remplissent tout le champ (Champ entier) ou des données situées au début du champ (Début de champ). La valeur par défaut est Champ entier. |
Respecter la casse |
Indique si la recherche respecte la casse. Cliquez sur Oui (effectuer une recherche qui respecte la casse) ou sur Non (effectuer la recherche sans respecter les majuscules et les minuscules). La valeur par défaut est Non. |
Sens |
Spécifie si la recherche part de l’enregistrement actif et remonte jusqu’au début des enregistrements (Haut), descend jusqu’à la fin des enregistrements (Bas) ou descend jusqu’à la fin des enregistrements, puis repart du début des enregistrements jusqu’à l’enregistrement actif afin que tous les enregistrements soient inclus dans la recherche (Tous). La valeur par défaut est Tous. |
Avec mise en forme |
Spécifie si la recherche inclut des données mises en forme. Cliquez sur Oui (Access recherche les données en fonction de leur mise en forme et de leur affichage dans le champ) ou Non (Access recherche les données en fonction de leur enregistrement dans la base de données, qui n’est pas toujours identique à leur affichage). La valeur par défaut est Non. Vous pouvez utiliser cette fonction pour limiter la recherche aux données ayant un format particulier. Par exemple, cliquez sur Oui et saisissez 1,234 dans l’argument Rechercher pour rechercher une valeur de 1,234 dans un champ mis en forme pour inclure les virgules. Cliquez sur Non si vous souhaitez saisir 1234 pour recherche les données dans ce champ. Pour rechercher des dates, cliquez sur Oui pour trouver une date exactement telle qu’elle est mise en forme, par exemple 08-juillet-2015. Si vous cliquez sur Non, entrez la date de l’argument Rechercher dans le format défini dans les paramètres régionaux de Windows Panneau de configuration. Ce format s’affiche dans la zone Format de date courte située sous l’onglet Date dans les paramètres régionaux. Par exemple, si la zone Format de date courte est définie sur M/j/aa, vous pouvez entrer 7/8/15 et Access recherche toutes les entrées dans un champ Date correspondant au 8 juillet 2015, quelle que soit la mise en forme de ce champ. Remarque : L’argument Avec mise en forme est appliqué uniquement si le champ actif est un contrôle dépendant, si l’argument Où est défini sur Champ entier, si l’argument Champ actif uniquement est défini sur Oui et si l’argument Respecter la casse est défini sur Non. Si vous définissez Respecter la casse sur Oui ou Champ actif uniquement sur Non, vous devez également définir Avec mise en forme sur Oui. |
Champ actif uniquement |
Spécifie si la recherche est limitée au champ actif de chaque enregistrement ou si elle inclut tous les champs de chaque enregistrement. La recherche dans le champ actif est plus rapide. Cliquez sur Oui (limiter la recherche au champ actif) ou sur Non (rechercher dans tous les champs de chaque enregistrement). La valeur par défaut est Oui. |
Trouver le premier |
Indique si la recherche débute au premier enregistrement ou à l’enregistrement actif. Cliquez sur Oui (démarrer au premier enregistrement) ou sur Non (démarrer à l’enregistrement actif). La valeur par défaut est Oui. |
Remarques
Lorsqu’une macro exécute l’action TrouverEnregistrement, Access recherche les données spécifiées dans les enregistrements (l’ordre de la recherche est déterminé par le paramètre de l’argument Sens). Lorsqu’Access trouve les données spécifiées, elles sont sélectionnées dans l’enregistrement.
L’action TrouverEnregistrement équivaut à cliquer sur Rechercher sous l’onglet Accueil et ses arguments sont identiques aux options de la boîte de dialogue Rechercher et remplacer. Si vous définissez les arguments de l’action TrouverEnregistrement dans le volet Générateur de macro, puis exécutez la macro, les options correspondantes sont sélectionnées dans la boîte de dialogue Rechercher et remplacer lorsque vous cliquez sur Rechercher.
Access conserve les arguments les plus récents de l’action TrouverEnregistrement au cours d’une session de base de données afin que vous n’ayez pas à réentrer les mêmes critères si vous utilisez plusieurs fois l’action TrouverEnregistrement. Si vous laissez un argument vide, Access utilise le paramètre le plus récent de cet argument, qu’il ait été défini par une action TrouverEnregistrement précédente ou dans la boîte de dialogue Rechercher et remplacer.
Si vous souhaitez rechercher un enregistrement à l’aide d’une macro, utilisez l’action TrouverEnregistrement, et non l’action ExécuterCommandeMenu avec son argument défini pour exécuter la commande Rechercher.
Remarque : Bien que l’action TrouverEnregistrement corresponde à la commande Rechercher sous l’onglet Accueil pour les tables, les requêtes et les formulaires, elle ne correspond pas à la commande Rechercher dans le menu Edition de la fenêtre Code. Vous ne pouvez pas utiliser l’action TrouverEnregistrement pour rechercher du texte dans les modules.
Si le texte actuellement sélectionné correspond au texte recherché au moment de l’exécution de l’action TrouverEnregistrement, la recherche commence immédiatement après la sélection, dans le même champ que la sélection et dans le même enregistrement. Sinon, la recherche commence au début de l’enregistrement actif. Cela vous permet de rechercher plusieurs instances des mêmes critères de recherche dans un même enregistrement.
Toutefois, notez que si vous utilisez un bouton de commande pour exécuter une macro contenant l’action RechercherEnregistrement, la première instance des critères de recherche est trouvée à plusieurs reprises. Ce comportement se produit car le fait de cliquer sur le bouton de commande supprime le focus du champ contenant la valeur correspondante. L’action RechercherEnregistrement commence alors la recherche à partir du début de l’enregistrement. Pour éviter ce problème, exécutez la macro à l’aide d’une technique qui ne modifie pas le focus, comme un bouton de barre d’outils personnalisé ou une combinaison de touches définie dans une macro AutoKeys, ou définissez le focus dans la macro sur le champ contenant les critères de recherche avant d’effectuer l’action RechercherEnregistrement .
Note de sécurité : Évitez d’utiliser l’instruction SendKeys ou une macro AutoKeys avec des informations sensibles et confidentielles. Un utilisateur malveillant pourrait intercepter la frappe et compromettre la sécurité de votre ordinateur et de vos données.
Ce comportement est également observé si vous utilisez un bouton de commande pour exécuter une macro contenant l’action TrouverSuivant.
Pour exécuter l’action TrouverEnregistrement dans un module Visual Basic pour Applications (VBA), utilisez la méthode FindRecord de l’objet DoCmd.
Pour les recherches plus complexes, vous voudrez peut-être utiliser l’action de macro RechercherEnregistrement.