Bon, il existe une autre solution qui conjugue deux possibilités des tableurs : un calcul à la place d'une fonction, qu'on peut conjuguer avec une mise en forme conditionnelle :
dans D2 : =(B2/M2)*(C2<>0) (si C2 vaut 0, alors "(C2<>0)" vaut 0. sinon, si C2 est non nul, alors, "(C2<>0)" vaut 1)
Puis mise en forme conditionnelle : si D2=0, couleur de police identique à la couleur de fond (pour ne pas afficher le zéro).
Quel intérêt à utiliser une formule de ce type plutôt qu'une fonction ? Si la formule doit être utilisée sur 10 lignes aucun, mais si elle doit être répliquée sur une colonne de 10 000 ou 20 000 lignes, alors, les temps de recalcul de la feuille pourront être divisés par 10 ou 20, car Excel l'interprète beaucoup plus rapidement que la fonction SI(), c'est là tout l'intérêt des opérateurs logiques, qui forment des formules un peu plus complexes que les fonctions, mais génèrent des calculs beaucoup plus rapides que celles ci !