Excel работа с датами до 1900

Это глава из книги Билла Джелена Гуру Excel расширяют горизонты: делайте невозможное с Microsoft Excel.

Задача: Excel хранит дату как число дней, прошедших с 1 января 1900 года. Это означает, что все функции даты не работают для дат XVIII в. и более ранних. Это проблема для историков и генеалогов (людей, занимающихся генеалогией).

Решение: предлагается формула, которая работает с любыми датами с 1 января 1000 г. Она основана на добавлении 1000 лет ко всем датам. Таким образом, допустимая дата, например, 23 января 2009, станет 23 января, 3009. При этом недопустимая дата, например, 17 февраля 1865, станет допустимой – 17 февраля 2865. Поскольку Excel может работать с датами вплоть до 9999 года, то с этой стороны проблем не предвидится.

Введите начальную и конечную даты в ячейки А4 в В4 (рис. 1). Используйте, например, формат 17/02/1865. Если ваша дата после 1900, Excel автоматически преобразует дату в порядковый номер. Если дата до 1900, Excel сохранит ее в виде текста. Я использовал условное форматирование для области А4:В14 на основе формулы =НЕ(ЕТЕКСТ(A4)), которое подкрасило ячейки с датами.

Рис. 1. Кажется, что Excel обрабатывает даты до 1900 года, когда вы используете эту формулу

Рис. 1. Кажется, что Excel обрабатывает даты до 1900 года, когда вы используете спецформулу

Скачать заметку в формате Word или pdf, примеры в формате Excel

Если ячейка содержит допустимую дату, вы добавляете 1000 лет. Простой способ сделать это – использовать функцию ДАТАМЕС(А4;12000). Эта функция возвращает дату, которая на 12 000 месяцев (1000 лет) отстоит от начальной даты, указанной в первом аргументе функции ДАТАМЕС. Обратите внимание, что эта функция появилась в Excel 2007. В более ранних версиях эта функция доступна после установки надстройки Пакет анализа. Вместо этого можете использовать формулу: =ДАТА(ГОД(А4)+1000;МЕСЯЦ(А4);ДЕНЬ(А4)).

Если ячейка содержит недопустимую дату (до 1900 г.), вам нужно разбить дату в текстовом виде на элементы, добавить 1000 лет к годам, после чего обратно склеить элементы:

  • Получите левую часть даты (дни, месяцы и разделитель) =ЛЕВСИМВ(A4;ДЛСТР(A4)-4)
  • Получите год =ПРАВСИМВ(A4;4)
  • Добавьте 1000 лет к году =ПРАВСИМВ(A4;4)+1000
  • Сцепите дни, месяцы и год =ЛЕВСИМВ(A4;ДЛСТР(A4)-4)&ПРАВСИМВ(A4;4)+1000
  • Преобразуйте текст, полученный на предыдущем шаге в дату =ДАТАЗНАЧ(ЛЕВСИМВ(A4;ДЛСТР(A4)-4)&ПРАВСИМВ(A4;4)+1000)

Теперь необходимо избирательно использовать, либо фрагмент с ДАТАМЕС, либо фрагмент с ДАТАЗНАЧ, в зависимости от того, как Excel воспринимает содержимое ячейки: как дату, или как текст. Если кратко, то формула в С4: =ЕСЛИ(ЕТЕКСТ(А4);ДАТАЗНАЧ();ДАТАМЕС()). Полностью формула: =ЕСЛИ(ЕТЕКСТ(A4);ДАТАЗНАЧ(ЛЕВСИМВ(A4;ДЛСТР(A4)-4)&ПРАВСИМВ(A4;4)+1000); ДАТАМЕС(A4;12000)). Скопируйте ее в ячейку D4, чтобы получить измененную дату для столбца В. Теперь вы можете использовать эти результаты с любой функцией даты. Например, в Е4 с помощью формулы =D4-C4 вы просто определите разность между конечной и начальной датой в днях. А в F4 с помощью формулы =РАЗНДАТ(C4;D4;»y») разность D4-C4 в полных годах. В ячейке G4 формулы из С4, D4 и Е4 объединены в одну мегаформулу: =ЕСЛИ(ЕТЕКСТ(B4);ДАТАЗНАЧ(ЛЕВСИМВ(B4;ДЛСТР(B4)-4)&ПРАВСИМВ(B4;4)+1000);ДАТАМЕС(B4;12000))-ЕСЛИ(ЕТЕКСТ(A4);ДАТАЗНАЧ(ЛЕВСИМВ (A4;ДЛСТР(A4)-4)&ПРАВСИМВ(A4;4)+1000);ДАТАМЕС(A4;12000))

Не забудьте, что в Англии и колониях переход с юлианского на григорианский календарь привел к тому, что вслед за 2 сентября 1752 года наступило сразу 14 сентября. В России вслед за 31 января 1918 года наступило 14 февраля (подробнее см. Григорианский календарь). Предложенная формула не обрабатывает эти аномалии.

Резюме: несмотря на то, что Excel не умеет напрямую работать с датами до 1900 года, вы можете добавить ко всем датам некое фиксированное число лет (например, 1000), и сделать доступным обработку формулами дат.

Источник. Эта формула была предложена Барри Гудини.

 

Впервые столкнулся с тем, что excel не всемогущ )))
и это довольно странное ограничение
как будо разработчики думали, что электронные таблицы могут использоваться только для расчетов в настоящем или будущем времени
а расчеты с датами XVIII-XIX и более ранних веков не предусмотрели
можно ли как-то обойти эту недальновидность разработчиков?
идея в том, чтобы вводя в поле со значением «дата» дату по юлианскому календарю, получать в соседней ячейке дату по григорианскому (с простой разницей в 11 или 12 дней для этих веков)

а потом свести их к единой формуле «григорианская дата (юлианская дата)»

тут второй вопрос
если просто сделать через & то получится что-то вроде «22 декабря 1805 (10 декабря 1805)» или «2 декабря 1805 (20 ноября 1805)»
можно ли сделать так, чтобы они отображались более традиционно «22 (10) декабря 1805» и «2 декабря (20 ноября) 1805»?

Сделать это на Маке и без макросов

Изменено: Илья Кудряшов13.12.2014 15:28:32

 

vikttur

Пользователь

Сообщений: 47199
Регистрация: 15.09.2012

Вопрос общий, не только для Мака.
Перенести тему в раздел «Вопросы…»?
Покажите в примере Excel данные и желаемый результат.

 

Z

Пользователь

Сообщений: 6111
Регистрация: 21.12.2012

Win 10, MSO 2013 SP1

Был когда-то «студенческий» вариантик — припас, однако… ;)

«Ctrl+S» — достойное завершение ваших гениальных мыслей!.. ;)

 

Если общий, переносите, конечно

 

Илья Кудряшов

Пользователь

Сообщений: 29
Регистрация: 14.11.2014

#5

13.12.2014 15:27:55

Цитата
Z пишет: Был когда-то «студенческий» вариантик

Макросы. Под виндами
в маке не запускается

 

vikttur

Пользователь

Сообщений: 47199
Регистрация: 15.09.2012

#6

13.12.2014 15:31:13

Получается, вопрос не общий.
Что-то типа:

Код
=ТЕКСТ(ДАТА(A3;B3;C3);"дд МММ (")&ТЕКСТ(ДАТА(A3;B3;C3+11);"дд МММ) ")&A3 

Изменено: vikttur13.12.2014 15:36:58

 

Юрий М

Модератор

Сообщений: 60570
Регистрация: 14.09.2012

Контакты см. в профиле

#7

13.12.2014 15:52:22

Цитата
Илья Кудряшов пишет: Макросы. Под виндами в маке не запускается

Большинство работает нормально.

 

vikttur, да, получилось собрать дату
остается только второй вопрос

 

vikttur

Пользователь

Сообщений: 47199
Регистрация: 15.09.2012

Вы принцип формировния поняли?
=ТЕКСТ(ДАТА(A3;B3;C3);»дд МММ») — только число и короткая запись месяца
=ТЕКСТ(ДАТА(A3;B3;C3);»дд») — только число.
Разделяйте/сцепляйте.

 

да, я принцип понял
но если каждый раз смотреть, в разные месяцы или года приходятся даты, и каждый раз вручную править формулу…
для двух десятков это нестрашно, но у меня таких дат пара тысяч )))

 

Z

Пользователь

Сообщений: 6111
Регистрация: 21.12.2012

Win 10, MSO 2013 SP1

#11

13.12.2014 16:52:10

Цитата
Илья Кудряшов пишет: для двух десятков это нестрашно, но у меня…

Как вариант — «Работа«… ;)

«Ctrl+S» — достойное завершение ваших гениальных мыслей!.. ;)

 

Вот

отсюда

идем

сюда

Есть и для винды, и для мака.

 

Илья Кудряшов

Пользователь

Сообщений: 29
Регистрация: 14.11.2014

#13

15.12.2014 12:11:00

Цитата
Максим Зеленский пишет: Есть и для винды, и для мака.

Спасибо
дурацкий, возможно, вопрос
но где найти раздел
Tools — Add-Ins
в русском экселе под маком?

Сервис — Надстройки
Так?

Если это так, то вставил, наверное…

Но excel по-прежнему введенную дату 10.05.1805 не воспринимает как дату и не позволяет делать с ней вычислений

Изменено: Илья Кудряшов15.12.2014 13:06:26

 

Максим Зеленский

Пользователь

Сообщений: 4646
Регистрация: 11.06.2014

Microsoft MVP

#14

15.12.2014 16:02:34

Скрытый текст

Для работы с ранними датами используйте функции, указанные по той ссылке. Сам по себе Excel все равно не воспримет ваши старые даты как положено

F1 творит чудеса


Если возникла необходимость выполнить вычисления с датами до 01.01.1900, то придется прибегнуть к некоторым ухищрениям, чтобы использовать встроенные функции

EXCEL

для работы с датами.

Чтобы иметь возможность использовать встроенные функции EXCEL необходимо, чтобы даты были в диапазоне от 01.01.1900 до 31.12.9999. Но, иногда, этого диапазона дат недостаточно. Рассмотрим типичную задачу, в которой может возникнуть необходимость использования дат

до 01.01.1900.

Задача

Определим сколько лет, месяцев и дней прожил Джордж Ноэл Гордон Байрон (дата рождения 22.01.1788, дата смерти 19.04.1824).

Решение

Для решения воспользуемся функцией

РАЗНДАТ()

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

РАЗНДАТ()

можно подавать даты от 01.01.1900 до 31.12.9999. (см.

файл примера

).

Почему мы прибавили 2000 лет, а не, например, 1000? Это сделано для того чтобы учесть

високосный ли год

. Дело в том, что согласно действующего Григорианского календаря, год кратный 4 – високосный, но если год кратен 100, то он не считается високосным. А вот если он еще и кратен 400, то он все-таки високосный. Поэтому для обеспечения точности до дней лучше прибавлять к датам до 01.01.1900 величины кратные 400, т.е. 2000, а не 1000. В нашем случае, конечно, можно было бы прибавить и 400 лет, чтобы попасть в диапазон от 01.01.1900 до 31.12.9999.

Если в ячейку ввести значение 22.01.1788, то EXCEL воспримет его как текст. Как же прибавить к дате 22.01.1788, представляющей собой текстовое значение, 2000 лет? Для этого в файле примера день, месяц и год рождения/ смерти введены в отдельные ячейки. Затем к году необходимо прибавить 2000 лет и, наконец, перевести получившееся значение в формат даты с помощью функции

ДАТА()

:

=ДАТА(B7;B5;B4)

.

Для подсчета полного времени жизни с точностью до дня можно использовать формулу:

=РАЗНДАТ(B8;C8;»y»)&» лет » &РАЗНДАТ(B8;C8;»ym»)&» мес. » &РАЗНДАТ(B8;C8;»md»)&» дн.»

Итак, Байрон прожил 36 лет 2 месяца и 28 дней.


ВНИМАНИЕ!

Как показано в статье с описанием недокументированной функции

РАЗНДАТ()

, эта функция с параметром «md» может вернуть ошибочное значение (ошибка м.б. несколько дней в зависимости от версии EXCEL).

О том как EXCEL хранит дату можно прочитать в одноименной статье

Как EXCEL хранит дату и время

.

As a comment

— dates in Excel are actually integer numbers where 1 is equal to Jan 01, 1900 (if we speak about PC version). However, if format zero as date it will be returned as Jan 00, 1900 which could be interpreted as Dec 31, 1899.

— there are quite many techniques how to work with dates before 1900. Since such dates are interpreted as text it very depends on in which format your dates are presented since in any case you need to parse your text to substruct element of the date (year, month, day), convert to numbers and compare with another date (which is the number if after 1900 or another text). Or by adding few thousand of years to each date.

— if some dates are before shifting from Julian on Georgian calendar that also shall be taken into account adjusting the result on the days of shift.

— all above could be done in few ways

by different kind of formulas (google will provide the samples)

with using VBA. The starting point could be Microsoft sample How to calculate ages before 1/1/1900 in Excel or you may generate your own macro taking into account what built-in VBA function DateDiff works correctly with dates starting from year 100 (if dates text representation is in your locale format). 

using Power Query (Get&Transform). It correctly interprets dates before 1900 if convert them from text to date. The only point of final step after you calculate durations not to forget return format back to text before loading resulting table into the Excel sheet. Power Query even recognizes the dates if the text is in long/short date formats like December 25, 1865.

Содержание

  1. Microsoft Excel
  2. Как в Excel работать с датами, предшествующим 1900 году
  3. Как вычислить возраст до 01.01.1900 в Excel
  4. Аннотация
  5. Использование макроса для вычисления возраста
  6. Ссылки
  7. Системы дат в Excel
  8. Система дат 1900
  9. Система дат 1904 г.
  10. Разница между системами дат
  11. Изменение системы дат по умолчанию
  12. Дополнительные сведения
  13. Excel. Даты до 1900 года
  14. Как Excel хранит дату и время
  15. Пример

Microsoft Excel

трюки • приёмы • решения

Как в Excel работать с датами, предшествующим 1900 году

В соответствии с позицией Excel мир начал свое существование 1 января 1900 года. Если вы работаете с исторической информацией, то уже могли заметить, что Excel не распознает даты до 1900 года. Например, если ввести в ячейку Июль 4, 1776, Excel интерпретирует это как текст, а не как дату.

К сожалению, единственный способ работы с датами, предшествующими 1900 году, состоит в том, чтобы ввести дату в ячейку в качестве текста. Проблема, однако, заключается в том, что вы не можете выполнить никакое преобразование с датами, поскольку они распознаются как текст. Например, вы не можете изменить числовое форматирование даты, определить, какой день недели выпал на определенную дату, вычислить дату, которая наступит через семь дней.

Для того чтобы выполнять сортировки по датам, которые предшествуют 1900 году, вводите год, месяц и день в отдельных ячейках (рис. 93.1).

Рис. 93.1, Чтобы выполнять сортировку по датам, предшествующим 1900 году, введите год, месяц и день в отдельных ячейках

Для сортировки президентов по дню рождения выполните сортировку, во-первых, по возрастанию для столбца D, во-вторых, по возрастанию для столбца С и, в-третьих, по возрастанию для столбца В. Результат показан на рис. 93.2. К сожалению, вы не можете выполнять другие связанные с датами операции для дат, предшествующих 1900 году. Например, вы не можете выполнить вычитание для определения возраста.

Рис. 93.2. Президенты отсортированы по дню рождения

Источник

Как вычислить возраст до 01.01.1900 в Excel

Аннотация

Хотя формулы дат Microsoft Excel могут использовать только даты, введенные в период с 1.01.1900 до 31.01.9999, вы можете использовать пользовательскую функцию Microsoft Visual Basic для приложений для расчета возраста (в годах) человека или того, что было впервые создано до 1 января 1900 г.

Использование макроса для вычисления возраста

Корпорация Майкрософт предоставляет примеры программирования только в целях демонстрации без явной или подразумеваемой гарантии. Данное положение включает, но не ограничивается этим, подразумеваемые гарантии товарной пригодности или соответствия отдельной задаче. Эта статья предполагает, что пользователь знаком с представленным языком программирования и средствами, используемыми для создания и отладки процедур. Специалисты технической поддержки Майкрософт могут пояснить работу той или иной процедуры, но модификация примеров и их адаптация к задачам разработчика не предусмотрена.

Excel вводит даты до 01.01.1900 в качестве текста. Эта функция работает для дат, введенных в виде текста, начиная с 1/1/0001, обычных дат и может обрабатывать даты, когда начальная дата до 1900 и конечная дата после 1900. Чтобы использовать макрос, выполните следующие действия:

Запустите Excel. Просмотрите лист, на котором вы хотите использовать функцию.

Нажмите клавиши ALT+F11, чтобы перейти в редактор Visual Basic.

В меню Вставка выберите Модуль.

Введите следующий код в модуле:

Введите следующие данные:

В ячейке A3 введите следующую формулу:

Startdate — это ссылка на первую дату (A1), а enddate — это ссылка на вторую дату (A2).

Результат должен быть 58.

Проверьте допустимость всех дат до 1.01.1900. Даты, введенные как текст, не проверяются в Excel.

Ссылки

Дополнительные сведения об использовании примера кода, приведенного в этой статье, см. в статье о запуске примера кода из статей базы знаний в Office 2010.

Источник

Системы дат в Excel

Excel поддерживает две системы дат: систему дат 1900 и систему дат 1904. В каждой системе дат используется уникальная начальная дата, с которой вычисляются все остальные даты книги. Все версии Excel для Windows вычисляют даты на основе системы дат 1900. Excel 2008 для Mac и более ранних Excel для Mac вычисляют даты на основе системы дат 1904. Excel 2016 для Mac и Excel для Mac 2011 используют систему дат 1900, которая гарантирует совместимость с Excel для Windows.

При копировании дат из книги, созданной в более ранней версии, в книгу, созданную в Excel 2016 или 2011 для Mac, они будут преобразовываться автоматически, если в параметрах > > Параметры даты не будет отключен параметр «Автоматически преобразовывать систему дат». Если этот параметр отключен, вы получите сообщение с вопросом, следует ли преобразовывать даты при вклеии. У вас есть два варианта действий. Вы можете преобразовать даты, чтобы использовать систему дат 1900 (рекомендуется). Этот параметр делает даты совместимыми с другими датами в книге. Вы также можете сохранить систему дат 1904 только для вклеиных дат.

Примечание: Даты, скопированные в составе диаграммы, нельзя преобразовать из системы дат 1904 г. и могут различаться примерно на четыре года. Эти даты необходимо преобразовать вручную.

Система дат 1900

В системе дат 1900 даты вычисляются с использованием 1 января 1900 г. в качестве отправной точки. При вводе даты она преобразуется в порядковый номер, который представляет количество дней, за которое прошло с 1 января 1900 г. Например, если ввести 5 июля 2011 г., Excel преобразует дату в число 40729. Это стандартная система дат в Excel для Windows, Excel 2016 для Mac и Excel для Mac 2011. Если вы решите преобразовать вкопированные данные, Excel скорректирует значения, а вкопированные даты будут соответствовать скопированные даты.

Система дат 1904 г.

В системе дат 1904 даты вычисляются с использованием 1 января 1904 г. в качестве отправной точки. При вводе даты она преобразуется в порядковый номер, который представляет количество дней, за которое прошло с 1 января 1904 г. Например, если ввести 5 июля 2011 г., Excel преобразует дату в число 39267. Это стандартная система дат в более ранних версиях Excel для Mac. Если вы решили не преобразовывать данные и сохранить систему дат 1904 г., то вкопированные даты будут отличаться от дат, которые вы скопировали.

Разница между системами дат

Так как в двух системах дат используются разные начальные дни, в каждой системе дат одинаковые даты представлены разными серийными номерами. Например, 5 июля 2011 г. может иметь две разные серийные номера:

Разница между двумя системами дат составляет 1462 дня. Это означает, что порядковый номер даты в системе дат 1900 всегда на 1462 дня больше, чем в системе дат 1904. 1462 дня — это четыре года и один день (включая один високосный день).

Изменение системы дат по умолчанию

Выберите Файл > Параметры.

(В Excel 2007 нажмите кнопку Microsoft Office кнопку и выберите Excel параметры.)

Выберите пункт Дополнительно.

В области При вычислении этой книгивыберите или clear Use 1904 date system.

В меню Excel выберите пункт Параметры.

В списке Формулы и спискивыберите вычисление .

Выберите или сберем его, чтобы использовать систему дат 1904.

Дополнительные сведения

Вы всегда можете задать вопрос специалисту Excel Tech Community или попросить помощи в сообществе Answers community.

Источник

Excel. Даты до 1900 года

Задача: Excel хранит дату как число дней, прошедших с 1 января 1900 года. Это означает, что все функции даты не работают для дат XVIII в. и более ранних. Это проблема для историков и генеалогов (людей, занимающихся генеалогией).

Решение: предлагается формула, которая работает с любыми датами с 1 января 1000 г. Она основана на добавлении 1000 лет ко всем датам. Таким образом, допустимая дата, например, 23 января 2009, станет 23 января, 3009. При этом недопустимая дата, например, 17 февраля 1865, станет допустимой – 17 февраля 2865. Поскольку Excel может работать с датами вплоть до 9999 года, то с этой стороны проблем не предвидится.

Введите начальную и конечную даты в ячейки А4 в В4 (рис. 1). Используйте, например, формат 17/02/1865. Если ваша дата после 1900, Excel автоматически преобразует дату в порядковый номер. Если дата до 1900, Excel сохранит ее в виде текста. Я использовал условное форматирование для области А4:В14 на основе формулы =НЕ(ЕТЕКСТ(A4)), которое подкрасило ячейки с датами.

Рис. 1. Кажется, что Excel обрабатывает даты до 1900 года, когда вы используете спецформулу

Скачать заметку в формате Word или pdf, примеры в формате Excel

Если ячейка содержит допустимую дату, вы добавляете 1000 лет. Простой способ сделать это – использовать функцию ДАТАМЕС(А4;12000). Эта функция возвращает дату, которая на 12 000 месяцев (1000 лет) отстоит от начальной даты, указанной в первом аргументе функции ДАТАМЕС. Обратите внимание, что эта функция появилась в Excel 2007. В более ранних версиях эта функция доступна после установки надстройки Пакет анализа. Вместо этого можете использовать формулу: =ДАТА(ГОД(А4)+1000;МЕСЯЦ(А4);ДЕНЬ(А4)).

Если ячейка содержит недопустимую дату (до 1900 г.), вам нужно разбить дату в текстовом виде на элементы, добавить 1000 лет к годам, после чего обратно склеить элементы:

  • Получите левую часть даты (дни, месяцы и разделитель) =ЛЕВСИМВ(A4;ДЛСТР(A4)-4)
  • Получите год =ПРАВСИМВ(A4;4)
  • Добавьте 1000 лет к году =ПРАВСИМВ(A4;4)+1000
  • Сцепите дни, месяцы и год =ЛЕВСИМВ(A4;ДЛСТР(A4)-4)&ПРАВСИМВ(A4;4)+1000
  • Преобразуйте текст, полученный на предыдущем шаге в дату =ДАТАЗНАЧ(ЛЕВСИМВ(A4;ДЛСТР(A4)-4)&ПРАВСИМВ(A4;4)+1000)

Теперь необходимо избирательно использовать, либо фрагмент с ДАТАМЕС, либо фрагмент с ДАТАЗНАЧ, в зависимости от того, как Excel воспринимает содержимое ячейки: как дату, или как текст. Если кратко, то формула в С4: =ЕСЛИ(ЕТЕКСТ(А4);ДАТАЗНАЧ();ДАТАМЕС()). Полностью формула: =ЕСЛИ(ЕТЕКСТ(A4);ДАТАЗНАЧ(ЛЕВСИМВ(A4;ДЛСТР(A4)-4)&ПРАВСИМВ(A4;4)+1000); ДАТАМЕС(A4;12000)). Скопируйте ее в ячейку D4, чтобы получить измененную дату для столбца В. Теперь вы можете использовать эти результаты с любой функцией даты. Например, в Е4 с помощью формулы =D4-C4 вы просто определите разность между конечной и начальной датой в днях. А в F4 с помощью формулы =РАЗНДАТ(C4;D4;»y») разность D4-C4 в полных годах. В ячейке G4 формулы из С4, D4 и Е4 объединены в одну мегаформулу: =ЕСЛИ(ЕТЕКСТ(B4);ДАТАЗНАЧ(ЛЕВСИМВ(B4;ДЛСТР(B4)-4)&ПРАВСИМВ(B4;4)+1000);ДАТАМЕС(B4;12000))-ЕСЛИ(ЕТЕКСТ(A4);ДАТАЗНАЧ(ЛЕВСИМВ (A4;ДЛСТР(A4)-4)&ПРАВСИМВ(A4;4)+1000);ДАТАМЕС(A4;12000))

Не забудьте, что в Англии и колониях переход с юлианского на григорианский календарь привел к тому, что вслед за 2 сентября 1752 года наступило сразу 14 сентября. В России вслед за 31 января 1918 года наступило 14 февраля (подробнее см. Григорианский календарь). Предложенная формула не обрабатывает эти аномалии.

Резюме: несмотря на то, что Excel не умеет напрямую работать с датами до 1900 года, вы можете добавить ко всем датам некое фиксированное число лет (например, 1000), и сделать доступным обработку формулами дат.

Источник. Эта формула была предложена Барри Гудини.

Источник

Как Excel хранит дату и время

history 8 апреля 2013 г.

В EXCEL дате соответствует целое положительное число, а времени суток — дробная часть числа.

Датам от 01.01.1900 до 31.12.9999 в EXCEL сопоставлены целые положительные числа от 1 до 2958466. Например, дате 25.01.1900 соответствует число 25. Отсюда следует, что одним суткам соответствует число 1.

Времени суток соответствует дробная часть числа. Так как одним суткам соответствует число 1, а 1 час – это 1/24 суток, 1 минута – 1/24/60, 1 сек – 1/24/60/60, то, например, число 0,5 тождественно 12:00. Времени 2:35:20 ( 2 часа 35 минут 20 секунд) соответствует число 0,10787 ( 2 *1/24+ 35 *1/24/60+ 20 *1/24/60/60).

Для отображения времени и даты в EXCEL существуют одноименные форматы ( Главная/ Число/ Формат ячеек ). Например, 14.01.2011 можно отобразить как 14-мар-2011 или как 2001-март.

Пример

Дате 14.01.2011 соответствует число 40557. Введем в ячейку 40557. Прибавим к 40557, например, 0,75 и применим к ячейке формат ДД.ММ.ГГ ч:мм;@ получим 14.01.11 18:00 , т.к. 0,75 соответствует 3/4 суток, т.е. 6 часов вечера.

Если встроенных форматов не достаточно, то можно настроить пользовательский формат (см. статью Пользовательский формат Даты и Времени ).

СОВЕТ: Если необходимо работать с датами до 01.01.1900 — прочитайте статью Вычисление с датами до 01.01.1900 .

Источник

Понравилась статья? Поделить с друзьями:
  • Excel работа с данными сумма
  • Excel работа с данными отношения
  • Excel работа с данными не активна
  • Excel работа с таблицами на уроке информатики
  • Excel работа с данными на разных листах