Comment vérifier que deux cellules sont identiques et forcer la saisie en MAJUSCULES sur Excel
Dans ce tutoriel, je vais vous montrer comment procéder pour vérifier que deux cellules, ou deux textes sont strictement identiques sur Excel. Nous verrons en effet, qu’il est possible de forcer Excel à distinguer les caractères en majuscules de ceux en minuscules, puis nous verrons en fin de tutoriel que cela va nous permettre par exemple de contrôler l’exhaustivités des valeurs contenues dans deux bases de données, ou encore de forcer la saisie des textes en majuscules.
Téléchargement
Vous pouvez télécharger le fichier d'exemple de cet article en cliquant sur le lien suivant :
Tutoriel Vidéo
1. Présentation
Lorsque nous souhaitons vérifier si deux cellules sont identiques, il est de coutume d’utiliser l’opérateur d’égalité (« = »), afin de récupérer un résultat booléen. Lorsque le résultat retourné est égal à VRAI, alors les cellules sont effectivement identiques. Dans le cas contraire, le résultat sera FAUX.
Résultat VRAI :
=B6=B7
Résultat FAUX :
=B6=B7
Pour rappel, le résultat booléen, ne correspond pas à une chaîne de caractères, mais bel et bien à un vrai résultat (comme une valeur numérique par exemple).
Il est donc possible d’utiliser directement ce résultat imbriqué dans une autre formule :
=SI(B6=B7;"Cellules identiques";"Cellules différentes")
2. Comparer des textes
La comparaison de nombres tels que nous venons de le voir ne pose aucun problème particulier, en effet le principe d’égalité est connu de tous : les valeurs sont égales, ou ne le sont pas !
En revanche, lorsque l’on souhaite comparer des chaînes textuelles, ces comparaisons sont un peu plus arbitraires, et dépendent de règles qu’il est nécessaire de connaître.
Par exemple, il faut savoir que l’opérateur égal fait la distinction entre les caractères accentués et ceux qui ne le sont pas :
Il est possible de passer outre cette limitation en développant une macro personnalisée en VBA, mais cela nécessiterait un tutoriel complet pour traiter le sujet. Dites-moi dans les commentaires de la vidéo de cet article si cela vous intéresse, je vous ferai alors une vidéo complète (cliquez-ici pour accéder à la vidéo).
Une deuxième règle importante à connaître concernant l’opérateur d’égalité, c’est que celui-ci ne s’occupe pas de la casse ! En d’autres termes, il considère que les caractères en majuscules et ceux en minuscules sont identiques :
Pour tenir compte de la casse exacte des cellules, l’opérateur d’égalité n’est pas suffisant, et nous allons devoir utiliser une formule Excel, il s’agit de la formule EXACT().
3. La formule EXACT()
La formule EXACT() permet de comparer deux chaînes de caractères afin de renvoyer VRAI lorsque celles-ci sont égales, et FAUX dans le cas contraire.
Cette formule demande deux paramètres, il s’agit des deux chaînes de caractères que l’on souhaite comparer :
=EXACT(texte1, texte2)
Contrairement à l’opérateur d’égalité, la comparaison est ici beaucoup plus poussée :
- La formule EXACT() fait la différence entre les caractères accentués et ceux qui ne le sont pas (tout comme le signe égal) :
- Mais en plus, la formule EXACT() est sensible à la casse :
- En revanche, celle-ci ne tient pas compte des différences existantes dans le formatage des cellules :
- Elle ne tient pas compte non plus du format appliqué aux nombres :
4. Applications de la formule EXACT()
4.1. Contrôler des bases de données
Grâce à la formule EXACT(), nous allons pourvoir simplement comparer des bases de données, en utilisant par exemple la mise en forme conditionnelle.
Pour illustrer cet exemple, nous souhaitons contrôler l’exactitude des libellés des références extraites de la base des articles d’une société, avec les mêmes références, cette fois-ci tirées de la base du fournisseur que nous retrouvons en interne dans la société :
Pour contrôler les articles en un coups d’œil, nous procédons de la manière suivante :
- Pour commencer, nous sélectionnons les cellules de la colonne des références enregistrées chez nous :
- Puis, nous nous rendons dans le menu Accueil du ruban, afin de sélectionner Mise en forme conditionnelle > Nouvelle règle :
- Puis nous saisissons la formule suivante « =EXACT(C13;B13) » (nous détaillerons cette formule juste en dessous), et ensuite, nous cliquons sur le bouton [Format…] :
- Afin de choisir par exemple une couleur de fond de cellule verte :
- Puis nous validons en appuyant sur le bouton [OK]
Revenons sur la formule utilisée :
=EXACT(C13;B13)
Ici, nous cherchons à savoir si la cellule active (qui est la cellule C13, comme l’indique les coordonnées indiquées dans la zone des noms) est exactement égale à la cellule située juste à gauche (donc la cellule B13) :
Excel nous indique alors que trois cellules ne sont pas égales :
En effet, le Vivobook n’est pas fabriqué par Acer, mais par Asus, la référence de l’HP est 17-by0002nf et le Toshiba est un Portégé (avec des accents !).
4.2. Forcer la saisie en caractères majuscules
Enfin, cette formule EXACT() va permettre de s’assurer que l’utilisateur saisisse des caractères en fonction d’une casse que nous souhaitons.
Pour l’exemple, nous désirons que la saisie se fasse uniquement en majuscule :
Pour cela, nous sélectionnons la ou les cellules concernées, puis nous allons choisir Validation des formules depuis le menu Données du ruban :
Dans la fenêtre qui s’ouvre, nous choisissons de n’autoriser que les saisies qui répondent à une formule précise, pour cela nous sélectionnons Personnalisé (pour tout savoir comment utiliser une formule pour valider les données sur Excel, je vous invite à consulter ce tutoriel)
Puis nous saisissons la formule suivante :
=EXACT(B21;MAJUSCULE(B21))
Nous comparons ici le texte saisi dans la cellule B21 avec le résultat retourné par la formule MAJUSCULE() de ce même texte.
À présent, il est possible de ne saisir du texte que lorsque celui-ci n’est composé que de majuscules :