Aller au contenu

Excel: Comment transformer un nombre entier en un nombre décimal

Une amie comptable me téléphone, car elle a un souci avec un fichier client (.csv) exporté à partir d'un logiciel de comptabilité.
Le problème est que tous les chiffres du fichier n'ont pas pris en compte les décimales. Par exemple, le chiffre de 250.36 euros dans le logiciel de comptabilité a été converti au moment de l'exportation en 25036 euros.


Mon amie bien embêtée me demande si à travers Excel, il y a une possibilité de retravailler tous les chiffres par une requête, une formule .......... Pour que les deux derniers chiffres deviennent des décimales.
Je lui dis oui, c'est possible, il suffit de créer une formule personnalisée.


Une bonne occasion de faire un petit article pour vous expliquer (ou de vous rappeler) la conception de ce type de formule.



Pour mon explication, je prends en exemple 25036 dans la cellule A1 :


Partie décimale


Dans un premier temps, je recherche à extraire les deux derniers chiffres pour en faire une partie décimale. Pour Excel cela représente simplement deux caractères. Par conséquent, j'utilise la fonction Droite dont la syntaxe est :
DROITE(texte,[no_car])
La formule pour trouver la partie décimale sera =DROITE(A1;2) dont le résultat va me donner 36

 

 


Partie entière


Ensuite, je vais travailler la partie entière du chiffre en utilisant la fonction Gauche dont la syntaxe est :
GAUCHE(texte, [no_car])
Avec la même valeur de départ, on obtient donc =GAUCHE(A1;2) qui renvoie un résultat de 25.

 

 

 


Le 2 dans ma formule représente pour la fonction gauche, le nombre de caractère [no_car]) que l'on souhaite extraire à partir de la gauche. Ceci ne peut pas convenir pour notre exemple et encore moins pour automatiser cette formule à n'importe quel nombre qui se trouve dans notre cellule.
Nous devons donc utiliser une autre fonction qui fera office de variable dans l'argument [no_car]) de notre fonction Gauche. Je vais utiliser la fonction NBCAR dont la syntaxe est NBCAR(texte)

Si je fais juste =NBCAR(A1) je vais obtenir logiquement la valeur 5 puisqu'en A1, 25036 possède bien 5 caractères. Je vais donc retirer 2 caractères (équivalent aux décimales) pour que ma recherche de la partie entière soit plus juste.
Ma formule NBCAR devient donc =NBCAR(A1)-2

 

 

 


Nous avons donc une formule pour la recherche de la partie entière qui est =GAUCHE(A1;NBCAR(A1)-2). Dans notre exemple 250.

 

 

 


Nous avons donc réussi à extraire la partie entière et la partie décimale, il nous reste plus qu'à faire une concaténation de ces différentes formules pour obtenir le résultat souhaité.
Je vais utiliser le & (et commerciale) pour faire ma concaténation de sorte à obtenir cette formule =GAUCHE(A1;NBCAR(A1)-2)&","&DROITE(A1;2)



GAUCHE(A1;NBCAR(A1)-2) => partie entière (250)
&"," => la virgule (,)
&DROITE(A1;2) => partie décimale (36)



Nous avons bien une formule qui transforme 25036 en 250,36 et nous pouvons remplacer n'importe quelle valeur en A1 que ça fonctionnera !
Mais pour un(e) comptable la formule n'est pas tout à fait finie. Effectivement si vous souhaitez utiliser le résultat dans une formule de calcul, il ne sera pas pris en compte en toute circonstance.

 

 

 

 

 

 


Pour une prise en compte du résultat, il faut encapsuler toute notre formule dans la fonction CNUM(texte)
=CNUM(GAUCHE(A1;NBCAR(A1)-2)&","&DROITE(A1;2))


 

 

 

 

Et voilà désormais, notre formule est prête.
Merci de laisser vos commentaires (en dessous) et à bientôt.

 

Publié par Denis Guitel le 7 octobre 2014

Suivez-moi sur:

Commentaires