Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Подсчёт Лет, Месяцев, Дней между датами ДО 01.01.1900 - Мир MS Excel

Старая форма входа
  • Страница 1 из 2
  • 1
  • 2
  • »
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Подсчёт Лет, Месяцев, Дней между датами ДО 01.01.1900 (Формулы/Formulas)
Подсчёт Лет, Месяцев, Дней между датами ДО 01.01.1900
Юрий_Ф Дата: Пятница, 18.09.2020, 10:08 | Сообщение № 1
Группа: Проверенные
Ранг: Ветеран
Сообщений: 768
Репутация: 1 ±
Замечаний: 60% ±

Excel 2010
Уважаемые гуру!
Есть формула подсчёта Лет-Месяцев-Дней в ХХ и XXI веке. (См. приложение верхняя строка.) Кстати, почерпнута здесь!
Но она не работает при работе с датами ДО 1900 года.
Сейчас работаю с историческим материалом по воздухоплавателям, которые не указаны в Вики.
Не подскажите, формулу Exel для работы в историческом прошлом? А заодно и определение дня недели в том времени? (Приложение нижняя строка.) Сам я вряд ли справлюсь с такими массивами.
Возможно, это будет интересно и познавательно не только для меня...


То, что мы делаем, завораживает!
Кстати! Я не могу всем нравиться! И это взаимно!


Сообщение отредактировал Юрий_Ф - Пятница, 18.09.2020, 10:10
 
Ответить
СообщениеУважаемые гуру!
Есть формула подсчёта Лет-Месяцев-Дней в ХХ и XXI веке. (См. приложение верхняя строка.) Кстати, почерпнута здесь!
Но она не работает при работе с датами ДО 1900 года.
Сейчас работаю с историческим материалом по воздухоплавателям, которые не указаны в Вики.
Не подскажите, формулу Exel для работы в историческом прошлом? А заодно и определение дня недели в том времени? (Приложение нижняя строка.) Сам я вряд ли справлюсь с такими массивами.
Возможно, это будет интересно и познавательно не только для меня...

Автор - Юрий_Ф
Дата добавления - 18.09.2020 в 10:08
Pelena Дата: Пятница, 18.09.2020, 10:17 | Сообщение № 2
Группа: Админы
Ранг: Местный житель
Сообщений: 19165
Репутация: 4412 ±
Замечаний: ±

Excel 365 & Mac Excel
Приложение не приложилось


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816
 
Ответить
СообщениеПриложение не приложилось

Автор - Pelena
Дата добавления - 18.09.2020 в 10:17
Юрий_Ф Дата: Пятница, 18.09.2020, 10:44 | Сообщение № 3
Группа: Проверенные
Ранг: Ветеран
Сообщений: 768
Репутация: 1 ±
Замечаний: 60% ±

Excel 2010
А что ж такое? А я ведь прикладывал!
(Или хотел приложить... :) )
Ещё одна попытка!
К сообщению приложен файл: 8154999.xlsx (9.6 Kb)


То, что мы делаем, завораживает!
Кстати! Я не могу всем нравиться! И это взаимно!


Сообщение отредактировал Юрий_Ф - Пятница, 18.09.2020, 10:44
 
Ответить
СообщениеА что ж такое? А я ведь прикладывал!
(Или хотел приложить... :) )
Ещё одна попытка!

Автор - Юрий_Ф
Дата добавления - 18.09.2020 в 10:44
alexa1965 Дата: Пятница, 18.09.2020, 12:23 | Сообщение № 4
Группа: Проверенные
Ранг: Обитатель
Сообщений: 342
Репутация: 55 ±
Замечаний: 0% ±

2003> 2019 >2016
Код
=ДАТАЗНАЧ(ЛЕВСИМВ(A8;ДЛСТР(A8)-4)&ПРАВСИМВ(A8;4)+2000)

Разницу в датах посчитает
Но дни недели в календарях, юлианский или григорианский может показать неправильно.


Главное не быть балабастиком

Сообщение отредактировал alexa1965 - Пятница, 18.09.2020, 12:24
 
Ответить
Сообщение
Код
=ДАТАЗНАЧ(ЛЕВСИМВ(A8;ДЛСТР(A8)-4)&ПРАВСИМВ(A8;4)+2000)

Разницу в датах посчитает
Но дни недели в календарях, юлианский или григорианский может показать неправильно.

Автор - alexa1965
Дата добавления - 18.09.2020 в 12:23
Nic70y Дата: Пятница, 18.09.2020, 12:32 | Сообщение № 5
Группа: Друзья
Ранг: Экселист
Сообщений: 8709
Репутация: 2261 ±
Замечаний: 0% ±

Excel 2010
Код
=РАЗНДАТ(ЗАМЕНИТЬ(ЗАМЕНИТЬ(A8;7;2;19);7;2;19);ЗАМЕНИТЬ(B8;7;2;19+ПСТР(B8;7;2)-ПСТР(A8;7;2));"y")&" "&ТЕКСТ(ОСТАТ(МАКС(ОСТАТ(РАЗНДАТ(ЗАМЕНИТЬ(ЗАМЕНИТЬ(A8;7;2;19);7;2;19);ЗАМЕНИТЬ(B8;7;2;19+ПСТР(B8;7;2)-ПСТР(A8;7;2));"y")-11;100);9);10);"[<1]\го\д;[<4]\го\да;лет")&" "&РАЗНДАТ(ЗАМЕНИТЬ(ЗАМЕНИТЬ(A8;7;2;19);7;2;19);ЗАМЕНИТЬ(B8;7;2;19+ПСТР(B8;7;2)-ПСТР(A8;7;2));"ym")&" меся"&ТЕКСТ(ОСТАТ(РАЗНДАТ(ЗАМЕНИТЬ(ЗАМЕНИТЬ(A8;7;2;19);7;2;19);ЗАМЕНИТЬ(B8;7;2;19+ПСТР(B8;7;2)-ПСТР(A8;7;2));"ym")-1;11);"[<1]ц;[<4]ца;цев")&" "&РАЗНДАТ(ЗАМЕНИТЬ(ЗАМЕНИТЬ(A8;7;2;19);7;2;19);ЗАМЕНИТЬ(B8;7;2;19+ПСТР(B8;7;2)-ПСТР(A8;7;2))+1;"md")&" д"&ТЕКСТ(ОСТАТ(МАКС(ОСТАТ(РАЗНДАТ(ЗАМЕНИТЬ(ЗАМЕНИТЬ(A8;7;2;19);7;2;19);ЗАМЕНИТЬ(B8;7;2;19+ПСТР(B8;7;2)-ПСТР(A8;7;2))+1;"md")-11;100);9);10);"[<1]ень;[<4]ня;ней")


ЮMoney 41001841029809
 
Ответить
Сообщение
Код
=РАЗНДАТ(ЗАМЕНИТЬ(ЗАМЕНИТЬ(A8;7;2;19);7;2;19);ЗАМЕНИТЬ(B8;7;2;19+ПСТР(B8;7;2)-ПСТР(A8;7;2));"y")&" "&ТЕКСТ(ОСТАТ(МАКС(ОСТАТ(РАЗНДАТ(ЗАМЕНИТЬ(ЗАМЕНИТЬ(A8;7;2;19);7;2;19);ЗАМЕНИТЬ(B8;7;2;19+ПСТР(B8;7;2)-ПСТР(A8;7;2));"y")-11;100);9);10);"[<1]\го\д;[<4]\го\да;лет")&" "&РАЗНДАТ(ЗАМЕНИТЬ(ЗАМЕНИТЬ(A8;7;2;19);7;2;19);ЗАМЕНИТЬ(B8;7;2;19+ПСТР(B8;7;2)-ПСТР(A8;7;2));"ym")&" меся"&ТЕКСТ(ОСТАТ(РАЗНДАТ(ЗАМЕНИТЬ(ЗАМЕНИТЬ(A8;7;2;19);7;2;19);ЗАМЕНИТЬ(B8;7;2;19+ПСТР(B8;7;2)-ПСТР(A8;7;2));"ym")-1;11);"[<1]ц;[<4]ца;цев")&" "&РАЗНДАТ(ЗАМЕНИТЬ(ЗАМЕНИТЬ(A8;7;2;19);7;2;19);ЗАМЕНИТЬ(B8;7;2;19+ПСТР(B8;7;2)-ПСТР(A8;7;2))+1;"md")&" д"&ТЕКСТ(ОСТАТ(МАКС(ОСТАТ(РАЗНДАТ(ЗАМЕНИТЬ(ЗАМЕНИТЬ(A8;7;2;19);7;2;19);ЗАМЕНИТЬ(B8;7;2;19+ПСТР(B8;7;2)-ПСТР(A8;7;2))+1;"md")-11;100);9);10);"[<1]ень;[<4]ня;ней")

Автор - Nic70y
Дата добавления - 18.09.2020 в 12:32
Pelena Дата: Пятница, 18.09.2020, 15:09 | Сообщение № 6
Группа: Админы
Ранг: Местный житель
Сообщений: 19165
Репутация: 4412 ±
Замечаний: ±

Excel 365 & Mac Excel
Теоретически календарь полностью повторяется каждые 28 лет, а если быть совсем точными и учитывать "невисокосность" годов, оканчивающихся на 00, то каждые 400 лет.
На основании этого решение с промежуточными датами в файле
К сообщению приложен файл: 8570045.xlsx (11.3 Kb)


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816
 
Ответить
СообщениеТеоретически календарь полностью повторяется каждые 28 лет, а если быть совсем точными и учитывать "невисокосность" годов, оканчивающихся на 00, то каждые 400 лет.
На основании этого решение с промежуточными датами в файле

Автор - Pelena
Дата добавления - 18.09.2020 в 15:09
Юрий_Ф Дата: Пятница, 18.09.2020, 17:21 | Сообщение № 7
Группа: Проверенные
Ранг: Ветеран
Сообщений: 768
Репутация: 1 ±
Замечаний: 60% ±

Excel 2010
alexa1965,
Я попробовал подставить вашу формулу, получается что-то непонятное = 709110.


То, что мы делаем, завораживает!
Кстати! Я не могу всем нравиться! И это взаимно!
 
Ответить
Сообщениеalexa1965,
Я попробовал подставить вашу формулу, получается что-то непонятное = 709110.

Автор - Юрий_Ф
Дата добавления - 18.09.2020 в 17:21
Юрий_Ф Дата: Пятница, 18.09.2020, 17:24 | Сообщение № 8
Группа: Проверенные
Ранг: Ветеран
Сообщений: 768
Репутация: 1 ±
Замечаний: 60% ±

Excel 2010
Nic70y,
Спасибо огромное! Вы как всегда на высоте! Отлично работает в подсчётах ГГ - ММ - ДД! Что значит знания+опыт+мастерство!
Но я понял так, что если человек родился, скажем в 1897 году, а помер в 1972, то формула не работает?
Другими словами следует считать до 31.12.1899 и складывать с результатом по формуле от 01.01.1900 до даты в 1972? Я ничего не напутал?


То, что мы делаем, завораживает!
Кстати! Я не могу всем нравиться! И это взаимно!


Сообщение отредактировал Юрий_Ф - Пятница, 18.09.2020, 17:29
 
Ответить
СообщениеNic70y,
Спасибо огромное! Вы как всегда на высоте! Отлично работает в подсчётах ГГ - ММ - ДД! Что значит знания+опыт+мастерство!
Но я понял так, что если человек родился, скажем в 1897 году, а помер в 1972, то формула не работает?
Другими словами следует считать до 31.12.1899 и складывать с результатом по формуле от 01.01.1900 до даты в 1972? Я ничего не напутал?

Автор - Юрий_Ф
Дата добавления - 18.09.2020 в 17:24
Юрий_Ф Дата: Пятница, 18.09.2020, 17:47 | Сообщение № 9
Группа: Проверенные
Ранг: Ветеран
Сообщений: 768
Репутация: 1 ±
Замечаний: 60% ±

Excel 2010
Pelena,
Огромнейшее СПАСИБО! Как интересно! Если бы вы не написали пояснения здесь, в вводной части, пришлось бы дольше разбираться!
И как просто! Чтобы считать разность дней просто получить эквивалент календарной даты в "нормальном" летоисчислении!
Познавательно! Очень благодарен! hands

Вот только в 17й строке в ячейке N17 даёт сбой и пишет об ошибке! Там-то что не так?


То, что мы делаем, завораживает!
Кстати! Я не могу всем нравиться! И это взаимно!


Сообщение отредактировал Юрий_Ф - Пятница, 18.09.2020, 17:59
 
Ответить
СообщениеPelena,
Огромнейшее СПАСИБО! Как интересно! Если бы вы не написали пояснения здесь, в вводной части, пришлось бы дольше разбираться!
И как просто! Чтобы считать разность дней просто получить эквивалент календарной даты в "нормальном" летоисчислении!
Познавательно! Очень благодарен! hands

Вот только в 17й строке в ячейке N17 даёт сбой и пишет об ошибке! Там-то что не так?

Автор - Юрий_Ф
Дата добавления - 18.09.2020 в 17:47
Юрий_Ф Дата: Пятница, 18.09.2020, 17:51 | Сообщение № 10
Группа: Проверенные
Ранг: Ветеран
Сообщений: 768
Репутация: 1 ±
Замечаний: 60% ±

Excel 2010
Уважаемая Pelena
Продолжаю разбираться.
А в чём "невисокосность" годов с окончанием на 00? В 2000 году всё-таки была дата 29 февраля!


То, что мы делаем, завораживает!
Кстати! Я не могу всем нравиться! И это взаимно!
 
Ответить
СообщениеУважаемая Pelena
Продолжаю разбираться.
А в чём "невисокосность" годов с окончанием на 00? В 2000 году всё-таки была дата 29 февраля!

Автор - Юрий_Ф
Дата добавления - 18.09.2020 в 17:51
Юрий_Ф Дата: Пятница, 18.09.2020, 18:13 | Сообщение № 11
Группа: Проверенные
Ранг: Ветеран
Сообщений: 768
Репутация: 1 ±
Замечаний: 60% ±

Excel 2010
Pelena,
А! Я, кажется, понял!
В К17 вышел год 3700, в L17 год 2372, разность между ними даёт более 400, отсюда и сообщение об ошибке!


То, что мы делаем, завораживает!
Кстати! Я не могу всем нравиться! И это взаимно!
 
Ответить
СообщениеPelena,
А! Я, кажется, понял!
В К17 вышел год 3700, в L17 год 2372, разность между ними даёт более 400, отсюда и сообщение об ошибке!

Автор - Юрий_Ф
Дата добавления - 18.09.2020 в 18:13
Pelena Дата: Пятница, 18.09.2020, 18:36 | Сообщение № 12
Группа: Админы
Ранг: Местный житель
Сообщений: 19165
Репутация: 4412 ±
Замечаний: ±

Excel 365 & Mac Excel
Там-то что не так?

Там даже после прибавления 400 дата не больше 1900, поэтому я вверху написала "если укладываемся в 400 лет"
В 2000 году всё-таки была дата 29 февраля
потому что если оканчивается на 000, то високосный, а если только два нуля 00, то невисокосный


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816
 
Ответить
Сообщение
Там-то что не так?

Там даже после прибавления 400 дата не больше 1900, поэтому я вверху написала "если укладываемся в 400 лет"
В 2000 году всё-таки была дата 29 февраля
потому что если оканчивается на 000, то високосный, а если только два нуля 00, то невисокосный

Автор - Pelena
Дата добавления - 18.09.2020 в 18:36
Юрий_Ф Дата: Пятница, 18.09.2020, 19:28 | Сообщение № 13
Группа: Проверенные
Ранг: Ветеран
Сообщений: 768
Репутация: 1 ±
Замечаний: 60% ±

Excel 2010
Pelena
Цитата
потому что если оканчивается на 000, то високосный, а если только два нуля 00, то невисокосный

Блиииин! С прискорбием (для себя) сообщаю, что даже не слышал об этом!
Спасибо ещё раз - просветили! B)

Но в правой части строки 17 получается более 400! Всё равно спасибо. Я уже понял здесь! Да и вполне хватит первого варианта вашей работы, чем задумываться: больше будет 400 лет или нет!


То, что мы делаем, завораживает!
Кстати! Я не могу всем нравиться! И это взаимно!


Сообщение отредактировал Юрий_Ф - Пятница, 18.09.2020, 19:28
 
Ответить
СообщениеPelena
Цитата
потому что если оканчивается на 000, то високосный, а если только два нуля 00, то невисокосный

Блиииин! С прискорбием (для себя) сообщаю, что даже не слышал об этом!
Спасибо ещё раз - просветили! B)

Но в правой части строки 17 получается более 400! Всё равно спасибо. Я уже понял здесь! Да и вполне хватит первого варианта вашей работы, чем задумываться: больше будет 400 лет или нет!

Автор - Юрий_Ф
Дата добавления - 18.09.2020 в 19:28
Nic70y Дата: Суббота, 19.09.2020, 12:36 | Сообщение № 14
Группа: Друзья
Ранг: Экселист
Сообщений: 8709
Репутация: 2261 ±
Замечаний: 0% ±

Excel 2010
в 1897 году, а помер в 1972
тогда так:
Код
=РАЗНДАТ(ЗАМЕНИТЬ(ТЕКСТ(A8;"ДД.ММ.ГГГГ");7;2;19);ЗАМЕНИТЬ(ТЕКСТ(B8;"ДД.ММ.ГГГГ");7;2;19+(ПСТР(ТЕКСТ(B8;"ДД.ММ.ГГГГ");7;2)-ПСТР(ТЕКСТ(A8;"ДД.ММ.ГГГГ");7;2)));"y")&" "&ТЕКСТ(ОСТАТ(МАКС(ОСТАТ(РАЗНДАТ(ЗАМЕНИТЬ(ТЕКСТ(A8;"ДД.ММ.ГГГГ");7;2;19);ЗАМЕНИТЬ(ТЕКСТ(B8;"ДД.ММ.ГГГГ");7;2;19+(ПСТР(ТЕКСТ(B8;"ДД.ММ.ГГГГ");7;2)-ПСТР(ТЕКСТ(A8;"ДД.ММ.ГГГГ");7;2)));"y")-11;100);9);10);"[<1]\го\д;[<4]\го\да;лет")&" "&РАЗНДАТ(ЗАМЕНИТЬ(ТЕКСТ(A8;"ДД.ММ.ГГГГ");7;2;19);ЗАМЕНИТЬ(ТЕКСТ(B8;"ДД.ММ.ГГГГ");7;2;19+(ПСТР(ТЕКСТ(B8;"ДД.ММ.ГГГГ");7;2)-ПСТР(ТЕКСТ(A8;"ДД.ММ.ГГГГ");7;2)));"ym")&" меся"&ТЕКСТ(ОСТАТ(РАЗНДАТ(ЗАМЕНИТЬ(ТЕКСТ(A8;"ДД.ММ.ГГГГ");7;2;19);ЗАМЕНИТЬ(ТЕКСТ(B8;"ДД.ММ.ГГГГ");7;2;19+(ПСТР(ТЕКСТ(B8;"ДД.ММ.ГГГГ");7;2)-ПСТР(ТЕКСТ(A8;"ДД.ММ.ГГГГ");7;2)));"ym")-1;11);"[<1]ц;[<4]ца;цев")&" "&РАЗНДАТ(ЗАМЕНИТЬ(ТЕКСТ(A8;"ДД.ММ.ГГГГ");7;2;19);ЗАМЕНИТЬ(ТЕКСТ(B8;"ДД.ММ.ГГГГ");7;2;19+(ПСТР(ТЕКСТ(B8;"ДД.ММ.ГГГГ");7;2)-ПСТР(ТЕКСТ(A8;"ДД.ММ.ГГГГ");7;2)))+1;"md")&" д"&ТЕКСТ(ОСТАТ(МАКС(ОСТАТ(РАЗНДАТ(ЗАМЕНИТЬ(ТЕКСТ(A8;"ДД.ММ.ГГГГ");7;2;19);ЗАМЕНИТЬ(ТЕКСТ(B8;"ДД.ММ.ГГГГ");7;2;19+(ПСТР(ТЕКСТ(B8;"ДД.ММ.ГГГГ");7;2)-ПСТР(ТЕКСТ(A8;"ДД.ММ.ГГГГ");7;2)))+1;"md")-11;100);9);10);"[<1]ень;[<4]ня;ней")
К сообщению приложен файл: 8154999-1-.xlsx (9.6 Kb)


ЮMoney 41001841029809
 
Ответить
Сообщение
в 1897 году, а помер в 1972
тогда так:
Код
=РАЗНДАТ(ЗАМЕНИТЬ(ТЕКСТ(A8;"ДД.ММ.ГГГГ");7;2;19);ЗАМЕНИТЬ(ТЕКСТ(B8;"ДД.ММ.ГГГГ");7;2;19+(ПСТР(ТЕКСТ(B8;"ДД.ММ.ГГГГ");7;2)-ПСТР(ТЕКСТ(A8;"ДД.ММ.ГГГГ");7;2)));"y")&" "&ТЕКСТ(ОСТАТ(МАКС(ОСТАТ(РАЗНДАТ(ЗАМЕНИТЬ(ТЕКСТ(A8;"ДД.ММ.ГГГГ");7;2;19);ЗАМЕНИТЬ(ТЕКСТ(B8;"ДД.ММ.ГГГГ");7;2;19+(ПСТР(ТЕКСТ(B8;"ДД.ММ.ГГГГ");7;2)-ПСТР(ТЕКСТ(A8;"ДД.ММ.ГГГГ");7;2)));"y")-11;100);9);10);"[<1]\го\д;[<4]\го\да;лет")&" "&РАЗНДАТ(ЗАМЕНИТЬ(ТЕКСТ(A8;"ДД.ММ.ГГГГ");7;2;19);ЗАМЕНИТЬ(ТЕКСТ(B8;"ДД.ММ.ГГГГ");7;2;19+(ПСТР(ТЕКСТ(B8;"ДД.ММ.ГГГГ");7;2)-ПСТР(ТЕКСТ(A8;"ДД.ММ.ГГГГ");7;2)));"ym")&" меся"&ТЕКСТ(ОСТАТ(РАЗНДАТ(ЗАМЕНИТЬ(ТЕКСТ(A8;"ДД.ММ.ГГГГ");7;2;19);ЗАМЕНИТЬ(ТЕКСТ(B8;"ДД.ММ.ГГГГ");7;2;19+(ПСТР(ТЕКСТ(B8;"ДД.ММ.ГГГГ");7;2)-ПСТР(ТЕКСТ(A8;"ДД.ММ.ГГГГ");7;2)));"ym")-1;11);"[<1]ц;[<4]ца;цев")&" "&РАЗНДАТ(ЗАМЕНИТЬ(ТЕКСТ(A8;"ДД.ММ.ГГГГ");7;2;19);ЗАМЕНИТЬ(ТЕКСТ(B8;"ДД.ММ.ГГГГ");7;2;19+(ПСТР(ТЕКСТ(B8;"ДД.ММ.ГГГГ");7;2)-ПСТР(ТЕКСТ(A8;"ДД.ММ.ГГГГ");7;2)))+1;"md")&" д"&ТЕКСТ(ОСТАТ(МАКС(ОСТАТ(РАЗНДАТ(ЗАМЕНИТЬ(ТЕКСТ(A8;"ДД.ММ.ГГГГ");7;2;19);ЗАМЕНИТЬ(ТЕКСТ(B8;"ДД.ММ.ГГГГ");7;2;19+(ПСТР(ТЕКСТ(B8;"ДД.ММ.ГГГГ");7;2)-ПСТР(ТЕКСТ(A8;"ДД.ММ.ГГГГ");7;2)))+1;"md")-11;100);9);10);"[<1]ень;[<4]ня;ней")

Автор - Nic70y
Дата добавления - 19.09.2020 в 12:36
bmv98rus Дата: Суббота, 19.09.2020, 14:49 | Сообщение № 15
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4099
Репутация: 766 ±
Замечаний: 0% ±

Excel 2013/2016
А если просто сместить на 1900 лет?
Код
=DATEDIF(IF(ISTEXT(A8);REPLACE(A8;7;4;RIGHT(A8;4)+1900);EDATE(A8;12*1900));IF(ISTEXT(B8);REPLACE(B8;7;4;RIGHT(B8;4)+1900);EDATE(B8;12*1900));"y")&" "&TEXT(MOD(MAX(MOD(DATEDIF(IF(ISTEXT(A8);REPLACE(A8;7;4;RIGHT(A8;4)+1900);EDATE(A8;12*1900));IF(ISTEXT(B8);REPLACE(B8;7;4;RIGHT(B8;4)+1900);EDATE(B8;12*1900));"y")-11;100);9);10);"[<1]\го\д;[<4]\го\да;лет")&" "&DATEDIF(IF(ISTEXT(A8);REPLACE(A8;7;4;RIGHT(A8;4)+1900);EDATE(A8;12*1900));IF(ISTEXT(B8);REPLACE(B8;7;4;RIGHT(B8;4)+1900);EDATE(B8;12*1900));"ym")&" меся"&TEXT(MOD(DATEDIF(IF(ISTEXT(A8);REPLACE(A8;7;4;RIGHT(A8;4)+1900);EDATE(A8;12*1900));IF(ISTEXT(B8);REPLACE(B8;7;4;RIGHT(B8;4)+1900);EDATE(B8;12*1900));"ym")-1;11);"[<1]ц;[<4]ца;цев")&" "&DATEDIF(IF(ISTEXT(A8);REPLACE(A8;7;4;RIGHT(A8;4)+1900);EDATE(A8;12*1900));IF(ISTEXT(B8);REPLACE(B8;7;4;RIGHT(B8;4)+1900);EDATE(B8;12*1900))+1;"md")&" д"&TEXT(MOD(MAX(MOD(DATEDIF(IF(ISTEXT(A8);REPLACE(A8;7;4;RIGHT(A8;4)+1900);EDATE(A8;12*1900));IF(ISTEXT(B8);REPLACE(B8;7;4;RIGHT(B8;4)+1900);EDATE(B8;12*1900))+1;"md")-11;100);9);10);"[<1]ень;[<4]ня;ней")

Или чуть короче
Код
=DATEDIF(IFERROR(EDATE(--A8;12*1900);REPLACE(A8;7;4;RIGHT(A8;4)+1900));IFERROR(EDATE(--B8;12*1900);REPLACE(B8;7;4;RIGHT(B8;4)+1900));"y")&" "&TEXT(MOD(MAX(MOD(DATEDIF(IFERROR(EDATE(--A8;12*1900);REPLACE(A8;7;4;RIGHT(A8;4)+1900));IFERROR(EDATE(--B8;12*1900);REPLACE(B8;7;4;RIGHT(B8;4)+1900));"y")-11;100);9);10);"[<1]\го\д;[<4]\го\да;лет")&" "&DATEDIF(IFERROR(EDATE(--A8;12*1900);REPLACE(A8;7;4;RIGHT(A8;4)+1900));IFERROR(EDATE(--B8;12*1900);REPLACE(B8;7;4;RIGHT(B8;4)+1900));"ym")&" меся"&TEXT(MOD(DATEDIF(IFERROR(EDATE(--A8;12*1900);REPLACE(A8;7;4;RIGHT(A8;4)+1900));IFERROR(EDATE(--B8;12*1900);REPLACE(B8;7;4;RIGHT(B8;4)+1900));"ym")-1;11);"[<1]ц;[<4]ца;цев")&" "&DATEDIF(IFERROR(EDATE(--A8;12*1900);REPLACE(A8;7;4;RIGHT(A8;4)+1900));IFERROR(EDATE(--B8;12*1900);REPLACE(B8;7;4;RIGHT(B8;4)+1900))+1;"md")&" д"&TEXT(MOD(MAX(MOD(DATEDIF(IFERROR(EDATE(--A8;12*1900);REPLACE(A8;7;4;RIGHT(A8;4)+1900));IFERROR(EDATE(--B8;12*1900);REPLACE(B8;7;4;RIGHT(B8;4)+1900))+1;"md")-11;100);9);10);"[<1]ень;[<4]ня;ней")
К сообщению приложен файл: example1864.xlsx (10.0 Kb)


Замечательный Временно просто медведь , процентов на 20.

Сообщение отредактировал bmv98rus - Суббота, 19.09.2020, 15:09
 
Ответить
СообщениеА если просто сместить на 1900 лет?
Код
=DATEDIF(IF(ISTEXT(A8);REPLACE(A8;7;4;RIGHT(A8;4)+1900);EDATE(A8;12*1900));IF(ISTEXT(B8);REPLACE(B8;7;4;RIGHT(B8;4)+1900);EDATE(B8;12*1900));"y")&" "&TEXT(MOD(MAX(MOD(DATEDIF(IF(ISTEXT(A8);REPLACE(A8;7;4;RIGHT(A8;4)+1900);EDATE(A8;12*1900));IF(ISTEXT(B8);REPLACE(B8;7;4;RIGHT(B8;4)+1900);EDATE(B8;12*1900));"y")-11;100);9);10);"[<1]\го\д;[<4]\го\да;лет")&" "&DATEDIF(IF(ISTEXT(A8);REPLACE(A8;7;4;RIGHT(A8;4)+1900);EDATE(A8;12*1900));IF(ISTEXT(B8);REPLACE(B8;7;4;RIGHT(B8;4)+1900);EDATE(B8;12*1900));"ym")&" меся"&TEXT(MOD(DATEDIF(IF(ISTEXT(A8);REPLACE(A8;7;4;RIGHT(A8;4)+1900);EDATE(A8;12*1900));IF(ISTEXT(B8);REPLACE(B8;7;4;RIGHT(B8;4)+1900);EDATE(B8;12*1900));"ym")-1;11);"[<1]ц;[<4]ца;цев")&" "&DATEDIF(IF(ISTEXT(A8);REPLACE(A8;7;4;RIGHT(A8;4)+1900);EDATE(A8;12*1900));IF(ISTEXT(B8);REPLACE(B8;7;4;RIGHT(B8;4)+1900);EDATE(B8;12*1900))+1;"md")&" д"&TEXT(MOD(MAX(MOD(DATEDIF(IF(ISTEXT(A8);REPLACE(A8;7;4;RIGHT(A8;4)+1900);EDATE(A8;12*1900));IF(ISTEXT(B8);REPLACE(B8;7;4;RIGHT(B8;4)+1900);EDATE(B8;12*1900))+1;"md")-11;100);9);10);"[<1]ень;[<4]ня;ней")

Или чуть короче
Код
=DATEDIF(IFERROR(EDATE(--A8;12*1900);REPLACE(A8;7;4;RIGHT(A8;4)+1900));IFERROR(EDATE(--B8;12*1900);REPLACE(B8;7;4;RIGHT(B8;4)+1900));"y")&" "&TEXT(MOD(MAX(MOD(DATEDIF(IFERROR(EDATE(--A8;12*1900);REPLACE(A8;7;4;RIGHT(A8;4)+1900));IFERROR(EDATE(--B8;12*1900);REPLACE(B8;7;4;RIGHT(B8;4)+1900));"y")-11;100);9);10);"[<1]\го\д;[<4]\го\да;лет")&" "&DATEDIF(IFERROR(EDATE(--A8;12*1900);REPLACE(A8;7;4;RIGHT(A8;4)+1900));IFERROR(EDATE(--B8;12*1900);REPLACE(B8;7;4;RIGHT(B8;4)+1900));"ym")&" меся"&TEXT(MOD(DATEDIF(IFERROR(EDATE(--A8;12*1900);REPLACE(A8;7;4;RIGHT(A8;4)+1900));IFERROR(EDATE(--B8;12*1900);REPLACE(B8;7;4;RIGHT(B8;4)+1900));"ym")-1;11);"[<1]ц;[<4]ца;цев")&" "&DATEDIF(IFERROR(EDATE(--A8;12*1900);REPLACE(A8;7;4;RIGHT(A8;4)+1900));IFERROR(EDATE(--B8;12*1900);REPLACE(B8;7;4;RIGHT(B8;4)+1900))+1;"md")&" д"&TEXT(MOD(MAX(MOD(DATEDIF(IFERROR(EDATE(--A8;12*1900);REPLACE(A8;7;4;RIGHT(A8;4)+1900));IFERROR(EDATE(--B8;12*1900);REPLACE(B8;7;4;RIGHT(B8;4)+1900))+1;"md")-11;100);9);10);"[<1]ень;[<4]ня;ней")

Автор - bmv98rus
Дата добавления - 19.09.2020 в 14:49
Michael_S Дата: Суббота, 19.09.2020, 15:51 | Сообщение № 16
Группа: Друзья
Ранг: Старожил
Сообщений: 2012
Репутация: 373 ±
Замечаний: 0% ±

Excel2016
А если просто сместить на 1900 лет?
Ну я, обычно, так и считал для себя, и выше это где-то предлагалось. Но, ТС еще и
А заодно и определение дня недели в том времени?
Для Этого прибавлять ровно 2000 лет - тогда григорианский календарь полностью совпадает.
 
Ответить
Сообщение
А если просто сместить на 1900 лет?
Ну я, обычно, так и считал для себя, и выше это где-то предлагалось. Но, ТС еще и
А заодно и определение дня недели в том времени?
Для Этого прибавлять ровно 2000 лет - тогда григорианский календарь полностью совпадает.

Автор - Michael_S
Дата добавления - 19.09.2020 в 15:51
bmv98rus Дата: Суббота, 19.09.2020, 18:51 | Сообщение № 17
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4099
Репутация: 766 ±
Замечаний: 0% ±

Excel 2013/2016
Этого прибавлять ровно 2000 лет
ну тогда просто заменить 1900 на 2000:-)
само преобразование то простое
Код
=IFERROR(EDATE(--A8,12*2000),REPLACE(A8,7,4,RIGHT(A8,4)+2000))


Замечательный Временно просто медведь , процентов на 20.
 
Ответить
Сообщение
Этого прибавлять ровно 2000 лет
ну тогда просто заменить 1900 на 2000:-)
само преобразование то простое
Код
=IFERROR(EDATE(--A8,12*2000),REPLACE(A8,7,4,RIGHT(A8,4)+2000))

Автор - bmv98rus
Дата добавления - 19.09.2020 в 18:51
Юрий_Ф Дата: Воскресенье, 20.09.2020, 00:46 | Сообщение № 18
Группа: Проверенные
Ранг: Ветеран
Сообщений: 768
Репутация: 1 ±
Замечаний: 60% ±

Excel 2010
Pelena,
Случайно выскочила непонятка!
Ставим: (родился) 19.09.1933, (умер) 18.10.2011.
И получаем неожиданный результат: 78 лет, 0 месяцев, 0 дней!
Но тут и на глаз видно, что пропадает целый месяц!


То, что мы делаем, завораживает!
Кстати! Я не могу всем нравиться! И это взаимно!
 
Ответить
СообщениеPelena,
Случайно выскочила непонятка!
Ставим: (родился) 19.09.1933, (умер) 18.10.2011.
И получаем неожиданный результат: 78 лет, 0 месяцев, 0 дней!
Но тут и на глаз видно, что пропадает целый месяц!

Автор - Юрий_Ф
Дата добавления - 20.09.2020 в 00:46
Юрий_Ф Дата: Воскресенье, 20.09.2020, 01:12 | Сообщение № 19
Группа: Проверенные
Ранг: Ветеран
Сообщений: 768
Репутация: 1 ±
Замечаний: 60% ±

Excel 2010
bmv98rus,
Спасибо за участие, но я вот поэксперементировал с вашими формулами, и получил неожиданные результаты после замен.
Гляньте, что получается! Обратите внимание на дни недели!
К сообщению приложен файл: example1864-1.xlsx (10.4 Kb)


То, что мы делаем, завораживает!
Кстати! Я не могу всем нравиться! И это взаимно!


Сообщение отредактировал Юрий_Ф - Воскресенье, 20.09.2020, 01:53
 
Ответить
Сообщениеbmv98rus,
Спасибо за участие, но я вот поэксперементировал с вашими формулами, и получил неожиданные результаты после замен.
Гляньте, что получается! Обратите внимание на дни недели!

Автор - Юрий_Ф
Дата добавления - 20.09.2020 в 01:12
Юрий_Ф Дата: Воскресенье, 20.09.2020, 01:15 | Сообщение № 20
Группа: Проверенные
Ранг: Ветеран
Сообщений: 768
Репутация: 1 ±
Замечаний: 60% ±

Excel 2010
Pelena, bmv98rus,
Наверное, всё-таки в примере:
(родился) 19.09.1933, (умер) 18.10.2011.
И неожиданный результат: 78 лет, 0 месяцев, 0 дней! И он - верен! Потому что он такой выходит в формулах у вас двоих! И по варианту Nic70y - тоже!
Но неужели за 78 тел набегает минус целый месяц високосных дней? Выходит, что так!


То, что мы делаем, завораживает!
Кстати! Я не могу всем нравиться! И это взаимно!


Сообщение отредактировал Юрий_Ф - Воскресенье, 20.09.2020, 02:09
 
Ответить
СообщениеPelena, bmv98rus,
Наверное, всё-таки в примере:
(родился) 19.09.1933, (умер) 18.10.2011.
И неожиданный результат: 78 лет, 0 месяцев, 0 дней! И он - верен! Потому что он такой выходит в формулах у вас двоих! И по варианту Nic70y - тоже!
Но неужели за 78 тел набегает минус целый месяц високосных дней? Выходит, что так!

Автор - Юрий_Ф
Дата добавления - 20.09.2020 в 01:15
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Подсчёт Лет, Месяцев, Дней между датами ДО 01.01.1900 (Формулы/Formulas)
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!