Les formules logiques ET(), OU() et OUX() d’Excel pour combiner des tests
Dans ce tutoriel, nous allons découvrir les différentes formules logiques que nous allons pouvoir utiliser dans Excel, afin de pouvoir combiner des ensembles de tests. Nous découvrirons ainsi les formules ET(), OU() et OUX().
Pour suivre cet article dans les meilleures conditions, je vous invite à télécharger le fichier en suivant le lien disponible ci-dessous :
Téléchargement
Vous pouvez télécharger le fichier d'exemple de cet article en cliquant sur le lien suivant :
1. Qu’est-ce qu’une formule logique ?
Une formule logique permet de combiner plusieurs tests afin de retourner un résultat booléen, c’est-à-dire une réponse qui ne peut avoir pour valeur que VRAI ou FAUX. Il ne s’agit pas ici de chaînes de caractères (d’où l’absence de parenthèse), mais de véritables valeurs interprétées par Excel en tant que tel, notamment pour être utilisé dans une formule. Il arrive souvent que l’on ait recours à des formules logiques, sans forcément s’en rendre compte, comme par exemple lorsque l’on utilise la formule SI() (pour nous en rendre compte, il suffit d’utiliser l’outil d’analyse de formule (menu Formules > Évaluer la formule) :
=SI(10<20;"oui";"non")
Dans la formule SI(), Excel commence par effectuer un test logique, qui dans cet exemple est très simple car constitué d’un seul élément, puis transforme ce dernier en valeur Booléenne. Ensuite, en fonction de ce dernier, Excel retourne le second ou le troisième paramètre de la formule.
Utiliser une formule logique en tant que test dans la formule SI() permet d’effectuer plusieurs tests en simultané :
=SI(ET(10>5;10<20);"oui";"non")
Il est possible de combiner jusque 255 arguments dans les formules logiques que nous allons voir dans ce tutoriel, chacun d’entre eux étant séparé par un point-virgule.
Nous allons maintenant voir les différentes formules logiques, puis dans une dernière partie nous rentrerons plus dans le détail au travers d’exemples concrets.
2. Cumuler les conditions : la formule ET()
La première formule logique que nous allons voir maintenant est la formule ET(). Comme nous venons juste de le voir, cette formule permet de vérifier que toutes les conditions sont effectivement remplies, c’est-à-dire que tous les tests renvoient la valeur VRAI :
Il suffit qu’un seul élément testé ait FAUX pour valeur pour que la formule ET() renvoie FAUX !
3. Au moins une condition est remplie : la formule OU()
La seconde formule logique est la formule OU(), il s’agit en quelques sortes de l’inverse de la formule ET() En effet, cette formule permet de vérifier qu’au moins une condition est effectivement remplie et renvoie la valeur VRAI :
Si tous les éléments testés sont FAUX, alors formule ET() renvoie FAUX, dans tous les cas contraire, celle-ci renvoie VRAI.
La formule OU() est dites « OU inclusif », par opposition à la formule « OU exclusive » que nous allons voir maintenant.
4. Au moins un nombre impaire de conditions sont remplies : la formule OUX()
Enfin vient la troisième formule, qui est bien plus récente que les deux autres formules que nous venons de voir, car introduite depuis la version 2013 d’Excel.
Cette formule, un peu plus complexe à appréhender, est la formule OUX() que l’on appelle plus communément « OU exclusif » et qui permet de vérifier que le nombre de VRAI testés apparaît en nombre impaire :
Si l’utilité de cette formule peut sembler assez obscure, sachez que nous ne l’utiliserons pratiquement que pour tester deux éléments seulement, et nous chercherons alors à savoir si l’un de ces deux éléments seulement est VRAI (et par conséquence que le second est FAUX).
5. Et maintenant quelques exemples concrets
Pour illustrer ces éléments, nous utiliserons la base des données suivante, que je vous invite fortement à télécharger pour bien comprendre toutes les notions que nous étudions dans ce tutoriel :
Nous retrouvons ici une base de données contenant des informations personnelles sur un certain nombre de personnes, telles que leur identité, leur sexe, lieu de résidence, … et nous allons souhaiter en extraire un certain nombre d’informations.
Pour simplifier l’analyse, la base de données a été convertie en tant que table de données Excel. Vous trouverez toutes les informations sur ce type de données en cliquant ici.
5.1. La personne habite à Paris ET possède le permis ? (formule ET())
Comme vous pouvez vous en douter d’après la manière dont la question est posée, nous ici utiliser la formule ET() pour vérifier si les deux conditions sont remplies :
- Condition 1 : habiter Paris
- Condition 2 : posséder le permis de conduire
=ET([@Résidence]="Paris";[@Permis]="Oui")
Vous pourrez noter dans cet exemple que la colonne « Permis » est remplie de Oui et de Non, et donc les tests nécessites de comparer la valeur de la cellule avec la chaîne de caractères correspondante. Pour simplifier davantage les formules, nous pourrions simplement transformer ces valeurs en VRAI et FAUX. Pour cela, il suffit de sélectionner les valeurs contenues dans la colonne, puis d’appuyer sur les touches [Ctrl]+[h] du clavier pour lancer la fenêtre de remplacement :
Enfin, nous cliquons sur le bouton [Remplacer tout] pour transformer les valeurs « Oui » en « VRAI ».
Nous recommençons ensuite l’opération pour remplacer les « Non » en « FAUX ».
De cette manière, la formule devient :
=ET([@Résidence]="Paris";[@Permis])
5.2. La personne est née avant 1980 OU porte des lunettes OU les deux
Ici nous cherchons à savoir si la personne est née avant 1980, ou si elle porte des lunettes (ou les deux), nous allons donc utiliser la formule OU() :
=OU(ANNEE([@Naissance])<1980;[@Lunettes])
5.3. La personne est née avant 1980 OU porte des lunettes, mais pas les deux
Ici nous reprenons l’exemple précédent, à la différence que nous ne souhaitons exclure les personnes qui répondent aux deux hypothèses, nous allons donc utiliser la formule OUX() :
=OU(ANNEE([@Naissance])<1980;[@Lunettes])
5.4. Pourquoi ces tests ?
Bien évidemment, et au-delà de savoir si des tests sont VRAI ou FAUX, ces valeurs Booléenne permette de construire des formules un peu plus complexes :
=SI(ET([@Résidence]="Paris";[@Permis]);"Est parisien(ne) et possède le permis";"")