У меня есть ячейка с числом (отформатированным как "52,9" в моей локали), и я хочу отформатировать его в строку в другой ячейке с определенным десятичным разделителем ("52.9"). Я не хочу менять свою локаль или что-то еще, я хочу, чтобы это работало одинаково независимо от используемой локали. Я мог бы, конечно, использовать какую-то сложную формулу, чтобы вырезать целое число и десятичные знаки и снова сшить их вместе, но у меня вопрос, есть ли функция, которая это делает?
Я использую последнюю версию Excel 365.
решение1
Да, это довольно просто:
=Substitute("25,84";",";".")
В результате получится такая строка:
25,84 -> 25.84
решение2
Получите символ десятичного разделителя в отдельной ячейке. Используйте его для замены.
Пример.
Положите1,1число в ячейку А1. Это эталон.
Введите формулу=СРЕДНИЙ($A$1,2,1)в B1. Это текущий десятичный разделитель.
Введите значение, которое вы хотите преобразовать в строку, с определенным десятичным разделителем (52,9) к А2.
Введите формулу=ПОДСТАВИТЬ(A2;$B$1;".")до B2. Вы получаете нужный вам результат.
Конечно, это можно объединить в одну сложную формулу=ПОДСТАВИТЬ(A2;СРЕДИН($A$1;2;1);".")освобождение ячейки B1 - это безопасно, когда количество чисел, которые необходимо преобразовать, невелико.
Эталонную формулу и текущую формулу десятичного разделителя можно поместить в любые статические ячейки (например, в скрытую 1-ю строку или на служебный/скрытый рабочий лист, или, возможно, в вашей рабочей книге есть какие-то подходящие статические данные, которые можно использовать в качестве эталонной формулы...).