Comparer du texte dans Google Sheets avec EXACT
7 août 2026
Comparer du texte dans Google Sheets paraît simple jusqu’à ce que la casse, les espaces ou des valeurs quasi identiques vous piègent. L’opérateur = est insensible à la casse pour le texte, donc "Apple" = "apple" est vrai. Quand il faut une correspondance stricte, caractère par caractère — mots de passe, codes, identifiants, règles de validation — utilisez EXACT. Ce guide explique le fonctionnement d’EXACT, sa différence avec =, et des schémas pratiques avec TRIM et UPPER pour une égalité stricte ou volontairement « floue ».
Ce que fait EXACT
EXACT compare deux chaînes et renvoie TRUE uniquement si elles sont identiques, y compris la casse. Espaces, ponctuation et différences invisibles comptent tous.
=EXACT("SheetFX", "SheetFX")
=EXACT("SheetFX", "sheetfx")
=EXACT("A1", "A1 ")
La première formule renvoie TRUE. La deuxième renvoie FALSE à cause de la casse. La troisième renvoie FALSE à cause de l’espace final. C’est tout l’intérêt : EXACT ne « simplifie » jamais silencieusement en ignorant la casse ou le padding.
Vous pouvez passer des références de cellules de la même façon :
=EXACT(A2, B2)
EXACT face à l’opérateur =
Pour les nombres et la logique pure, = convient. Pour le texte, le comportement diffère :
="Apple"="apple"
=EXACT("Apple", "apple")
La première formule renvoie TRUE (égalité insensible à la casse). La seconde renvoie FALSE. Utilisez = quand une correspondance « humaine » suffit (par ex. un libellé de statut saisi en casse mixte). Utilisez EXACT quand la chaîne est une clé : codes promo, matricules, SKU, fragments de checksum, ou tout ce pour quoi la casse fait partie de la valeur.
Autre subtilité : EXACT traite les deux arguments comme du texte pour la comparaison, ce qui rend certains cas mixtes (nombre vs texte) plus prévisibles.
Construire une égalité floue… volontairement
La correspondance stricte n’est pas toujours le bon choix. Souvent, on veut « même contenu après nettoyage ». Combinez EXACT avec des fonctions de nettoyage pour que la règle soit explicite, pas accidentelle.
Ignorer les espaces en tête et en fin
=EXACT(TRIM(A2), TRIM(B2))
TRIM supprime les espaces superflus aux extrémités (et regroupe les espaces internes répétés dans Google Sheets). Associer TRIM et EXACT est un schéma de validation courant quand les utilisateurs collent des valeurs depuis un e-mail ou un CSV.
Insensible à la casse, mais « exact » pour le reste
=EXACT(UPPER(A2), UPPER(B2))
Ou avec les deux nettoyages :
=EXACT(UPPER(TRIM(A2)), UPPER(TRIM(B2)))
Cette formule est vraie quand les valeurs coïncident après normalisation de la casse et des espaces. Vous obtenez une égalité floue contrôlée : casse et espaces ignorés, caractères encore strictement comparés. Préférez cela à un = brut quand vous voulez une règle lisible et intentionnelle.
Normaliser avant de comparer (identifiants et codes)
Pour des codes qui ne doivent jamais contenir d’espaces :
=EXACT(SUBSTITUTE(UPPER(A2), " ", ""), SUBSTITUTE(UPPER(B2), " ", ""))
On supprime tous les espaces et on met les deux côtés en majuscules avant EXACT — utile pour numéros d’adhérent ou codes promo saisis avec des trous accidentels.
Cas d’usage de validation
Confirmer qu’un champ de confirmation correspond
Deux cellules doivent contenir le même e-mail ou le même code (sensible à la casse si besoin) :
=IF(EXACT(A2, B2), "Correspondance", "Ne correspond pas")
Pour un e-mail, on veut en général l’insensibilité à la casse :
=IF(EXACT(LOWER(TRIM(A2)), LOWER(TRIM(B2))), "Correspondance", "Ne correspond pas")
Repérer les lignes modifiées après import
Si la colonne A est la valeur système source et B la valeur éditée dans la feuille :
=IF(EXACT(A2, B2), "", "Modifié")
Parce qu’EXACT est sensible à la casse, un passage de "NY" à "ny" est détecté — ce que A2=B2 manquerait.
Déduplication avec une colonne d’aide
Quand deux colonnes ne forment une paire unique que si les chaînes correspondent exactement :
=EXACT(A2, C2)
Filtrez ou utilisez COUNTIF sur la colonne d’aide pour trouver les vrais doublons sous des règles strictes. Pour des clés de dédup insensibles à la casse, construisez d’abord une clé normalisée :
=UPPER(TRIM(A2))
Puis comptez cette colonne de clés plutôt que de vous reposer sur =.
Formule de validation des données
Dans Données → Validation des données → Formule personnalisée, exigez que la saisie en B2 corresponde à un code maître en A2 :
=EXACT(B2, A2)
Ou autorisez une correspondance insensible à la casse contre la valeur de A2 :
=EXACT(UPPER(B2), UPPER(A2))
Mise en forme conditionnelle des écarts
Mettez en évidence les cellules dont la valeur ne correspond pas à une référence :
=NOT(EXACT(A2, $B$2))
Appliquez cette règle à une plage commençant en A2 pour faire remonter les fautes de frappe par rapport à une chaîne attendue fixe.
EXACT dans IF, FILTER et les tableaux
EXACT renvoie un booléen, donc il s’insère dans toute formule logique :
=IF(EXACT(A2, "ACTIVE"), "Garder", "Écarter")
Avec FILTER, ne gardez que les lignes dont le statut correspond exactement :
=FILTER(A2:C100, EXACT(B2:B100, "Open"))
Note : l’usage d’EXACT en tableau fonctionne dans les Sheets modernes comme les autres comparaisons élément par élément — chaque paire est évaluée, et vous obtenez une colonne de TRUE/FALSE que FILTER peut utiliser.
Erreurs fréquentes
- S’attendre à ce qu’EXACT ignore la casse. Ce n’est jamais le cas. Utilisez
UPPER/LOWER(ou un simple=) quand la casse ne doit pas compter. - Espaces invisibles.
"code"et"code "échouent avec EXACT. PréférezTRIMdes deux côtés pour la saisie humaine. - Espaces insécables et caractères spéciaux. TRIM ne retire pas toujours toutes les variantes d’espaces Unicode. Si la qualité du collage est mauvaise, nettoyez d’abord avec SUBSTITUTE ou CLEAN.
- Utiliser EXACT pour des nombres quand on veut une égalité numérique.
EXACT(1, "1")peut surprendre selon le stockage. Pour les nombres, préférez=ou des contrôles avec ROUND ; réservez EXACT aux clés textuelles. - Supposer que
=est toujours plus sûr. Pour les identifiants et codes, l’insensibilité silencieuse à la casse masque de vraies différences. Préférez EXACT (éventuellement avec normalisation explicite) pour les clés.
Quelle approche choisir ?
| Objectif | Approche |
| --- | --- |
| Identité sensible à la casse | EXACT(A, B) |
| Insensible à la casse, espaces comptent | EXACT(UPPER(A), UPPER(B)) ou A=B |
| Trim + insensible à la casse | EXACT(UPPER(TRIM(A)), UPPER(TRIM(B))) |
| Libellés de statut « humains » | = suffit en général |
| Codes, SKU, clés de validation | EXACT, avec UPPER/TRIM optionnels |
Pour aller plus loin
EXACT est une petite fonction au rôle clair : dire si deux chaînes sont vraiment les mêmes. Combinez-la avec TRIM, UPPER, LOWER et SUBSTITUTE pour un nettoyage contrôlé ; gardez EXACT brut quand la casse et les espaces font partie du contrat. Pour des schémas de nettoyage de texte plus larges, voir Travailler avec les fonctions de texte dans Google Sheets : le guide complet et la page de référence d’EXACT.