web-dev-qa-db-fra.com

Comment convertir tous les nombres indépendamment du séparateur décimal en nombre valide de paramètres régionaux en cours?

J'ai une colonne avec un texte ressemblant à ceci:

123,123
123.123
123,123
123.123

Je voudrais qu'une autre colonne analyse cela en nombres décimaux, sans tenir compte des différents séparateurs décimaux (point . et virgule ,) afin que le résultat soit comme ceci lorsque les paramètres régionaux ont point comme séparateur:

123.123
123.123
123.123
123.123

Et comme ça quand locale a une virgule comme séparateur:

123,123
123,123
123,123
123,123

Comment puis-je procéder de la manière la plus simple possible dans Google Sheets?

6
Lennart Rolland

La formule suivante fait le travail (testée avec les États-Unis et la Russie comme paramètres régionaux, les séparateurs étant différents):

=IFERROR(VALUE(SUBSTITUTE(A2, ",", ".")), VALUE(SUBSTITUTE(A2, ".", ",")))

Explication:

  • IFERROR renvoie le premier argument sauf s’il génère une erreur, auquel cas il renvoie le second.
  • Le premier argument de IFERROR est le résultat de la conversion du texte, les virgules remplacées par des points, en un nombre.
  • Le deuxième argument de IFERROR est le résultat de la conversion du texte, les points remplacés par des virgules, en un nombre.

Je suppose que dans chaque lieu, l'une des deux choses va fonctionner.

5
user79865