Excel : Double signe "moins"

baissaoui Messages postés 497 Date d'inscription jeudi 2 septembre 2021 Statut Webmaster Dernière intervention 22 mars 2024 - 18 juil. 2022 à 17:30

Document initial créé par Raymond PENTIER

Mise en œuvre

Il arrive que dans une formule Excel il y ait deux signes "moins" accolés, ce qui déroute la plupart des utilisateurs du logiciel.
De plus les tutos d'initiation et les aides en ligne n'en font pas mention habituellement.
En fait, on s'en sert lorsqu'une une date est saisie (ou copiée) en format texte, afin de la transformer en format numérique autorisant des calculs.
Voici donc une explication détaillée que nous devons à albkan (décembre 2016) :

La cellule A1 contient la date "31/12/2016" sous forme de texte ;
si je mets un signe moins devant, j'effectue un changement de signe (je multiplie par -1).
Pour pouvoir faire ce calcul, Excel effectue une conversion automatique du texte en son
n° de série 42735, ce qui donne -42735 ; pour obtenir une valeur positive, il me faut faire un double changement de signe : --"31/12/2016" => 42735.

Application pratique

Je veux bâtir la condition "compris entre deux dates" ;
ma fourchette a été saisie (ou importée) en format texte "31/12/2016" et "08/01/2017".
Je vais également mettre un double "moins" pour la 2ème date "08/01/2017", car le test de
A1 doit être fait sur des dates en n° de série, donc au format nombre.

La formule =ET(A1>--"31/12/2016";A1<--"08/01/2017") retourne VRAI ou FAUX ;
là encore, un signe moins devant ce résultat sera comme une multiplication par -1
=> on force la conversion automatique en nombre : FAUX devient 0 et VRAI devient -1 ;
et pour obtenir 1, on doit faire là aussi un double changement de signe :
=--ET(A1>--"31/12/2016";A1<--"08/01/2017")

Donc quand la date en A1 est incluse dans l'intervalle :
VRAI => -[-1] = 1
et lorsque la date en A1 est en dehors de l'intervalle :
FAUX => -[-0] = 0
----------------------------------------
Voilà pourquoi la formule comporte 3 « double moins ».

Autre explication plus brève

Dans la même discussion du 15 décembre 2016 intitulée "Problème de débutant" dans laquelle figure la formule prise en exemple, eriiic avait donné une explication plus succincte (mais tout aussi exacte) :

eriiic - 17 déc. 2016 à 23:50 post #11

"--" ca signifie quoi ?
- : changement de signe d'un nombre.
Le premier signe "moins" sert à forcer la conversion d'un 'nombre texte' ("1") en numérique (-1), le second à rétablir son signe.
*

  • Merci à albkan et à eriiic, qui sont à l'origine de cette fiche technique.