Salut.
BINDEC(Valeur) étant limité à 9 digits pour un nombre binaire positif, je propose deux formules pour transformer un nombre binaire en nombre décimal en faisant sauter cette limite:
toutes versions: =SOMMEPROD(STXT(A1;LIGNE(INDIRECT("a1:a" & NBCAR(A1)));1)*2^(NBCAR(A1)-LIGNE(INDIRECT("a1:a" & NBCAR(A1)))));
Excel 365: =LET(V;A1;L;NBCAR(V);P;LIGNE(INDIRECT("a1:a" & L));SOMME(STXT(V;P;1)*2^(L-P))).
Au passage, on remarque que LET permet
- de valoriser une cellule, ce qui veut dire que vous affectez A1 à une variable et qu'il suffit donc de changer A1 au début de la formule si vous l'utilisez pour une autre cellule;
- de valoriser une variable en se servant d'une variable précédemment déclarée dans le même LET;
- de recalculer une variable valorisée dans LET à chaque passe dans une formule matricielle.
LET, c'est vraiment une chouette trouvaille
Je développe le fonctionnement de ces formules dans ce billet de blog, pour celles et ceux que cela intéresse.
Partager