Как Excel воспринимает данные?
Что умеет Excel
На первый взгляд все просто: есть числа, есть текст, есть дата и время. Но на самом деле для Excel этот список чуть меньше. Для Excel существует либо текст, либо число. Напрашивается вопрос: Как так? Ведь мы же видим в ячейках и даты и время. Да, видим. Но видим мы время именно временем только потому, что сам Excel нам так показывает данные в ячейке. На самом деле в ячейке числовое значение.
Вот например: занесите в ячейку число 43587, а затем присвойте этой ячейке формат — Дата -»ДД.ММ.ГГГГ«(кто не знает как это сделать: щелкаем правой кнопкой мыши по ячейке-Формат ячеек-вкладка Число; либо просто выделяем нужную ячейку — Ctrl+1). И что мы видим? Дату — 02.05.2019. Т.е. 43587 в переводе на дату равно 02.05.2019. Исходя из этого можно догадаться, что 43587 — это количество дней. В общем 1 — это одни целые сутки. Но ведь с 01.01.0001(от рождества Христова) прошло гораздо больше дней, чем 43587 — свыше 733000. Правильно. Цифра 1 для Excel равна дате 01.01.1900 года, а не как не первого января первого года. 01.01.1900 — это начальная точка отсчета времени для Excel. Однако здесь тоже не без сюрпризов. Для компьютеров под управлением Macintosh в Excel отсчет начинается с 01.01.1904. Для корректной совместимости с такими компьютерами в Excel предусмотрена возможность включения исчисления дат 1904. Для Excel 2003: Сервис-Параметры-Вычисления-Использовать систему дат 1904; для Excel 2007: Меню-Параметры Excel-Дополнительно-Использовать систему дат 1904.
То же самое и со временем, но с одной небольшой разницей. Т.к. целые числа для Excel это даты, то они уже не могут быть временем. Следовательно временем является дробная часть чисел. Например 0,5 будет равно 12:00, а 0,124 — 2:58:34.
Следовательно, если записать в ячейку 43587,124, то в перевод на дату/время это будет - 02.05.2019 2:58:34.
Именно то, что Excel хранит данные таким образом, позволяет нам производить различные математические операции с датой и временем(складывать, вычитать, умножать и т.д.).
С текстом никаких интересных особенностей — текст он и есть текст.
Правда есть и нюансы: когда Вы будете записывать в ячейку число, например -2.1, то Excel непременно преобразует его в дату — 02.янв. Чтобы Excel так над Вами не издевался, самый простой способ — это перед внесением данных установить формат ячейки — Текстовый. Или ставить перед такими числами апостроф — ’2.1.
Надеюсь эта информация была для Вас полезной…

6689

Супер! Спасибо большое. Все оказывается так просто.
Спасибо!! Очень полезная штука!!
А как быть, если данные вставляются в таблицу методом Copy-Paste, да к тому же из другого приложения?
Мне ничего не помогает. Так данные 2.5 Excel 2007 воспринимает только как дату, изменяя формат ячейки и записывая 02.май, а при повторном изменении формата на текстовый изменяет значение на 41031
Михаил, внимательно прочитайте пару последних абзацев статьи — там описывается этот случай. Сначала измените формат ячеек на Текстовый, а затем вставляйте данные через Специальную вставку и формат не будет изменяться автоматом.