52

Когда я открою простой новый лист Excel (2016), изменим тип ячейки на Число и введите число 1.25 , он изменит введенное число на значение 43125,00 . Я получаю аналогичные результаты при вводе 1.01 или 1.9 , но не при вводе 1.99 - это рассматривается как текст или, по крайней мере, что-то непонятное как число.

Я понимаю, что я должен использовать , чтобы правильно вводить цифры.

У меня вопрос, что произойдет, когда я введу 1.25 в качестве числа? Почему я получаю 43125,00?

2 ответа2

109

Для вашего региональных настроек, является десятичным разделителем, так это то, что вам нужно использовать для ввода номера. Если вы используете точку, входные данные будут интерпретироваться как нечто отличное от числа; что это зависит от содержания.

Если то, что вы вводите, может быть действительной датой, период интерпретируется как разделитель даты. Excel считает, что 1.25 - это дата (25 января 2018 года), которая внутренне представлена как 43125 (количество дней с 0 января 1900 года).

Поскольку вы отформатировали ячейку как число, а не как дату, вы увидите числовое представление даты. Десятичные разряды по умолчанию установлены в два, давая вам нули в конце. Это чистое совпадение, что шаблон "125" повторяется при подсчете дней, представляющих эту дату.

И 1.01, и 1.9 могут быть датами, поэтому с ними происходит то же самое. Но 1.99 не может быть датой, поэтому введенное литеральное значение сохраняется как текст.

3

Прочитав комментарии, я понял, что механизм, стоящий за проблемой, сложнее, чем я думал. Во-первых, десятичный разделитель - это запятая, а не точка. Во-вторых, Excel классифицирует входное значение как значение «дата», но представляет его в формате «число».

Одним из решений опубликованной проблемы является изменение десятичного разделителя. Это можно сделать в Excel, Options -> Advanced -> Editing options -> Decimal separator . Если это исправлено, Excel не классифицирует входное значение как значение даты.

Десятичный разделитель - это не то, что я бы сразу рассмотрел, потому что, кто будет использовать запятую в качестве десятичного разделителя? И все же, что интересно и удивительно, половина мира фактически использует его (https://en.wikipedia.org/wiki/Decimal_separator).

Тем не менее, я узнал 43125 как значение даты в числовой форме. Если мы уберем вопрос о десятичном разделителе, подобный пример будет 1-25 , который Excel будет интерпретировать как значение «дата» и в формате «число» даст 45658.00 . Еще более запутанно то, что Excel допускает использование пользовательских форматов, так что значение даты может отображаться как 1.25 или 1,25 или в любой другой форме.

Я использовал много значений 'date' в таблицах для расчетов, и они могут раздражать. Иногда, когда я снова открываю эти таблицы, Excel (или Openoffice) думает, что они знают лучше, и автоматически преобразует эти столбцы даты из формата «дата» в формат «число» без всяких причин. В этих ситуациях right-click mouse -> Format Cells -> Number и сброс в правильный формат для ячеек / столбцов восстановит данные.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .