STRCOMP |
Compare la chaine de caractères |
|---|---|
| Access 2019, Access 2016, Access 2013, Access 2010, Access 2007, Access 2003, Access XP, Access 2000 | Microsoft Access |
Syntaxe
| StrComp(string1, string2 [, compare ] ) |
Paramètres
| Nom | Description | ||
|---|---|---|---|
| string1 | Ce paramètre permet d'indiquer la première chaîne de caractères à comparer. | ||
| string2 | Ce paramètre permet d'indiquer la deuxième chaîne de caractères à comparer. | ||
| compare | Ce paramètre permet d'indiquer la méthode comparaison : | ||
| Valeur | Constante | Description | |
| -1 | vbUseCompareOption | Cette valeur permet d'indiquer qu'il faut utiliser les options de comparaison | |
| 0 | vbBinaryCompare | Cette valeur permet d'indiquer qu'il faut effectuer une comparaison binaire. C'est la valeur par défaut | |
| 1 | vbTextCompare | Cette valeur permet d'indiquer qu'il faut effectuer une comparaison texte. | |
| 2 | vbDatabaseCompare | Cette valeur permet d'indiquer qu'il faut effectuer une comparaison basé sur la base de données. | |
Retour
| Valeur | Description |
|---|---|
| NULL | Cette valeur indique que les deux chaînes de caractères sont nulles. |
| -1 | Cette valeur indique que la première chaîne de caractères est inférieur à la deuxième. |
| 0 | Cette valeur indique que la première chaîne de caractères est égale à la deuxième. |
| 1 | Cette valeur indique que la première chaîne de caractères est supérieur à la deuxième. |
Description
Cette fonction effectue la comparaison de deux chaînes de caractères.
Remarques
- La fonction compare deux chaînes de caractères : La fonction StrComp permet de comparer deux chaînes de caractères et d'indiquer leur ordre relatif. Contrairement à une simple comparaison avec l'opérateur =, elle fournit également une information sur l'ordre alphabétique des deux textes. Cette fonction est très utile pour effectuer des tris ou des validations.
- Le résultat est une valeur numérique : StrComp retourne 0 lorsque les deux chaînes sont identiques, -1 lorsque la première est inférieure à la seconde et 1 lorsqu'elle est supérieure. Si l'une des expressions est Null, le résultat est généralement Null. Cette valeur de retour permet de prendre facilement des décisions dans le code.
- Le mode de comparaison est configurable : Le paramètre optionnel compare permet de choisir la méthode de comparaison. Il est possible d'utiliser une comparaison binaire (vbBinaryCompare), textuelle (vbTextCompare) ou basée sur les paramètres de la base de données (vbDatabaseCompare). Cette souplesse permet d'adapter le comportement de la fonction aux besoins de l'application.
- La comparaison binaire distingue les majuscules et les minuscules : Avec vbBinaryCompare, chaque caractère est comparé selon son code interne. Ainsi, "Access" et "access" sont considérés comme différents. Ce mode est recommandé lorsque la casse doit être respectée, par exemple pour certains identifiants techniques.
- La comparaison textuelle ignore généralement la casse : Lorsque le paramètre compare vaut vbTextCompare, les différences entre majuscules et minuscules sont généralement ignorées. Ainsi, "ACCESS" et "Access" sont considérés comme équivalents. Ce mode est particulièrement adapté aux recherches effectuées par les utilisateurs.
- Elle est plus expressive que les opérateurs de comparaison classiques : Les opérateurs =, < et > permettent uniquement de vérifier une condition précise. StrComp, quant à elle, indique directement si une chaîne est inférieure, égale ou supérieure à une autre. Cette caractéristique facilite l'écriture de certains algorithmes de tri ou de classement.
- Elle est disponible dans les requêtes et dans le code VBA : La fonction StrComp peut être utilisée dans les modules VBA ainsi que dans certaines expressions Access. Elle permet de comparer des chaînes directement dans les procédures, les formulaires ou les états. Son comportement reste cohérent dans les différents contextes d'utilisation.
- Elle est souvent utilisée avec d'autres fonctions de manipulation de texte : StrComp est fréquemment associée à LCase, UCase, Trim, Replace, Left, Right ou Mid. Ces fonctions permettent de normaliser les chaînes avant leur comparaison afin d'obtenir un résultat plus fiable. Cette combinaison est très utilisée lors de la validation des données.
- Elle facilite le développement d'algorithmes de tri : Le résultat retourné par StrComp permet de savoir immédiatement quel texte doit être placé avant ou après un autre. Cette propriété est utile pour développer des routines de tri personnalisées ou comparer des chaînes selon différents critères. Bien que les fonctions de tri intégrées soient généralement privilégiées, StrComp reste très utile dans les traitements spécifiques.
- La fonction est compatible avec toutes les versions modernes de Microsoft Access : La fonction StrComp est disponible depuis les premières versions de Microsoft Access intégrant VBA et son fonctionnement est demeuré stable au fil des années. Elle est compatible avec Access 2000, Access XP, Access 2003, Access 2007, Access 2010, Access 2013, Access 2016 ainsi qu'avec Microsoft 365. Cette stabilité garantit que les applications utilisant cette fonction continueront de produire les mêmes résultats lors des migrations vers des versions plus récentes d'Access.
Exemple
Voyons comment utiliser la fonction StrComp dans Microsoft Access :
StrComp ("Gladir.com", "Gladir.com")
Résultat: 0
StrComp ("Gladir.com", "Abc")
Résultat: 1
StrComp ("Gladir.com", "Xyz")
Résultat: -1
StrComp ("Gladir.com", NULL)
Résultat: NULL
Exemple de code VBA
La fonction StrComp peut être utilisée dans le code VBA de Microsoft Access.
Par exemple :
Dim LResult As Integer
LResult = StrComp ("Gladir.com", "Gladir.com")
Dans cet exemple, la variable appelée LResult contiendrait désormais la valeur 0 puisque les deux valeurs de chaîne sont égales.
Dernière mise à jour : Mardi, le 28 juillet 2015