Вы должны тщательно продумать свои данные и типы данных, с одной стороны, и их представление с другой.
Ваш первый пример выглядит как действительное число для меня, 17 миллионов 752 тысячи ... Если это так, вы можете использовать его в любом расчете. Отображение с разделителем тысяч - это вопрос форматирования. Значение этого числа не меняется, независимо от того, как вы его форматируете, формат определяет только то, как оно представляется пользователю. Независимо от того, отображается ли оно как 17752528,25
, 17,752,528.25
, 1,78E+07
, значение остается неизменным. И на моем компьютере это будет отображаться как 17.752.528,25
, поскольку мой компьютер настроен на использование запятой в качестве десятичного разделителя, но, тем не менее, значение будет таким же.
Если я ошибаюсь и это строка, вам нужно немного кодирования, чтобы ввести в нее запятые, но это изменило бы строку, так что это больше не вопрос форматирования. Значение без и значение с запятыми будут разными.
Теперь, если речь идет о вводе, где начальные нули имеют значение, у вас явно не число, а строка. Если пользователь вводит 00098756
и это будет число, значение будет 98756
. Вы можете изменить представление для отображения начальных нулей, но вы не будете знать, сколько начальных нулей ввел пользователь.
Чтобы сохранить нули в точности так, как они были введены пользователем, вам нужно либо отформатировать ячейку как text
, либо пользователь должен ввести начальный '
, иначе Excel будет интерпретировать ввод как число и немедленно выбросит нули , Теперь у вас есть строка, которая содержит только цифры, но имейте в виду, что 00098756
не равно 98756
или 98,756
. Однако вы можете использовать функцию value
в Excel (или val
в VBA), чтобы получить ее числовое значение.