Un format conditionnel génial !
Le problème de ce jour est
encore un test pour les petits génies d’Excel. Vous avez une liste de noms en
colonne A, chaque nom pouvant être répété une ou plusieurs fois.
Votre mission est de
construire un format conditionnel qui mette de façon alternative en bleu, puis en
jaune, et en alternant encore ensuite, chaque groupe de deux (ou plus) noms
identiques, comme nous le voyons en colonne A dans la copie d’écran ci-dessous.
Si vous êtes un petit génie
d’Excel, vous parviendrez à construire ce format conditionnel en faisant appel
à un calcul intermédiaire effectué dans une autre colonne !
Si vous êtes un grand génie
d’Excel, vous n’aurez pas besoin d’utiliser une colonne de calculs
intermédiaires.
Vous pouvez voir la solution que
je vous propose, dans laquelle je me suis inspiré des suggestions de mon
collègue Roberto Mensa, dans la copie d’écran ci-dessous.
Pour la première condition,
celle qui donne un fond bleu, la première partie est évidente : (NB.SI($A:$A;$A2)>1)
vérifie que le nom est au moins doublé.
La seconde partie vérifie que
le nom est différent du nom précédent et qu’il est aussi égal au nom suivant,
et – surtout – que cela fait un nombre impair de fois que cela arrive !
Voilà cette partie :
EST.IMPAIR(SOMME(($A$1:$A1<>$A$2:$A2)*($A$2:$A2=$A$3:$A3)))
Remarque
1 – Ce qui est impressionnant, c’est que cette partie de la formule utilisée
pour la première condition est en fait une formule matricielle.
Si
l’on avait utilisé cette formule dans une cellule normale, il aurait fallu la
valider par [Ctrl]-[Maj]-[Entrée] pour qu’elle fonctionne. En fait, dans un
format conditionnel, une formule matricielle peut fonctionner, mais elle doit
être saisie comme une formule simple, donc seulement validée avec [Entrée] !
La
seconde condition est nettement plus simple : =NB.SI($A:$A;$A2)-1 vérifie
tout simplement qu’il y a au moins un doublon et – puisque la première
condition ne s’est pas appliquée, sinon on n’arriverait pas à la seconde – que
cela fait un nombre pair de fois que cela arrive !
Remarque
2 – On pouvait aussi utiliser =NB.SI($A:$A;$A2)>1 pour le même résultat… En
fait, n’importe quelle valeur positive correspond à VRAI pour une condition.
3 Commentaire(s):
effectivement bien pratique! Mais la prochaine version d'excel 2013 semble proposer des automatismes sur le sujet.
La question sera de savoir comment automatiser ou non la reconnaissance des formules autres que les "types" comme addition, moyenne etc...
By
atophisse, sur 1:42 PM
Ne fonctionne pas avec
Lenoir
Legris
Legris
Legris
Lenoir
Levert
Levert
By
Anonyme, sur 11:11 PM
Cher anonyme,
Vous n'avez apparemment pas bien lu notre énoncé.
Chaque nom peut apparaître plusieurs fois, mais ces apparitions sont toujours voisines.
Ce n'est pas le cas dans votre exemple où les deux "Lenoir" ne sont pas voisins !
By
Hervé Thiriez, sur 8:34 AM
Enregistrer un commentaire
<< Accueil