EXACT() - Comparer deux chaînes de texte
La fonction EXACT() permet de comparer deux chaînes de texte, elle renvoie VRAI si les chaînes sont identiques, et FAUX dans le cas contraire.
Cette fonction n'est pas sensible au format des données mais elle respecte la casse ou les accents, et elle s'avère très utile notamment pour contrôler des saisies.
Syntaxe:
EXACT(texte1;texte2)
- texte1 et texte2 représentent les deux chaînes de texte à comparer.
Exemples
Le tableau ci-dessous montre tout l'intérêt de la fonction EXACT() lorsque l'on veut comparer des chaînes de caractères en tenant compte de la casse.
La simple formule en ligne 2 renvoie VRAI, alors que EXACT() sait faire la distinction :
La fonction EXACT() n'est pas sensible au format et n'a pas d'intérêt pour comparer des nombres:
Mettre en place un contrôle de saisie
Pour éviter une saisie utilisateur dans un mauvais format, mettons en place des contrôles (dans notre exemple le tableau à remplir va jusqu'à la ligne 50)
• Saisie des noms en MAJUSCULE
Une fois les cellules A2 à A50 sélectionnées, il convient de cliquer sur le menu Données / Validation (pour Excel 2007, Onglet Données, Groupe Outils de données, cliquer sur Validation des données).
Cette action provoque l'apparition de la fenêtre "Validation des données", nous sélectionnons l'onglet Options puis cliquons sur la petite flèche Autoriser pour choisir Personnalisé dans le menu déroulant:
Renseignons ensuite la formule qui va permettre de contrôler la saisie:
=EXACT(A2;MAJUSCULE(A2))
Cette formule de contrôle va s'appliquer à toutes les cellules que nous avons précédemment sélectionnées, et va comparer le contenu de la cellule avec le même contenu mis en majuscule, soit MAJUSCULE(A2).
La saisie ne sera valide que si la fonction EXACT() renvoie VRAI.
Nous pouvons compléter la fenêtre de validation de données en sélectionnant l'onglet Alerte Valeur:
Au niveau du style, nous avons sélectionné ici « Arrêt » pour que la saisie soit impossible en cas d'erreur.
(A ce stade nous pourrions choisir « Avertissement » au lieu de « Arrêt », cette option n'interdit pas la saisie mais affiche une fenêtre d'avertissement et demande confirmation; ou encore « Information » qui est encore plus souple et n'interdit pas non plus la saisie, mais renvoie une simple fenêtre d'information permettant de confirmer la saisie ou pas)
Une fois le style choisi, nous rentrons un message d'erreur comme ci-dessus, ce message s'affichera dans la fenêtre d'alerte pour expliquer l'erreur à l'utilisateur:
Il est conseillé de renseigner ce message d'erreur, sans quoi la fenêtre affiche un message par défaut qui n'est pas forcément très explicite:
• Saisie des noms au format Nom Propre
La procédure est exactement la même que ci-dessus, mais on fera appel cette fois à la fonction NOMPROPRE(), la formule devenant :
=EXACT(B2;NOMPROPRE(B2))
• Saisie des noms en lettres minuscules
Même cheminement que ci-dessus, avec la fonction MINUSCULE(), la formule étant:
=EXACT(C2;MINUSCULE(C2))
Pour en savoir plus sur les fonctions MINUSCULE() MAJUSCULE() et NOMPROPRE() vous pouvez consulter l'article MAJUSCULE() - MINUSCULE() - NOMPROPRE(): Modifier la casse d'un texte et également télécharger le fichier d'exercices corrigés traitant de ces fonctions.
Effectuer des calculs:
EXACT() peut-être conjuguée avec d'autres fonctions afin d'effectuer des calculs.
=SOMMEPROD(EXACT(A2:A6;"FIN")*1)