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

Вход

Регистрация

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

 

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

Регистрация · Логин: · Пароль: · · Забыли пароль?
  • Страница 2 из 2
  • «
  • 1
  • 2
Модератор форума: _Boroda_, Manyasha, SLAVICK, китин  
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Подсчёт Лет, Месяцев, Дней между датами ДО 01.01.1900 (Формулы/Formulas)
Подсчёт Лет, Месяцев, Дней между датами ДО 01.01.1900
Юрий_Ф Дата: Воскресенье, 20.09.2020, 01:23 | Сообщение № 21
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 228
Репутация: -3 ±
Замечаний: 0% ±

Excel 2010
Nic70y,
Интересный вариант! Длинный, но работает безупречно! По подсчёту лет - месяцев и дней. Но он не вычисляет дней недели этих дат. А по варианту Pelena вычисляется!
Или применить формулу преобразования bmv98rus из сообщения № 17, несколько видоизменив, чтобы был день недели, а не сама дата:
Код
=ДЕНЬНЕД(ЕСЛИОШИБКА(ДАТАМЕС(--A13;12*2000);ЗАМЕНИТЬ(A13;7;4;ПРАВСИМВ(A13;4)+2000)))


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


Сообщение отредактировал Юрий_Ф - Воскресенье, 20.09.2020, 02:47
 
Ответить
СообщениеNic70y,
Интересный вариант! Длинный, но работает безупречно! По подсчёту лет - месяцев и дней. Но он не вычисляет дней недели этих дат. А по варианту Pelena вычисляется!
Или применить формулу преобразования bmv98rus из сообщения № 17, несколько видоизменив, чтобы был день недели, а не сама дата:
Код
=ДЕНЬНЕД(ЕСЛИОШИБКА(ДАТАМЕС(--A13;12*2000);ЗАМЕНИТЬ(A13;7;4;ПРАВСИМВ(A13;4)+2000)))

Автор - Юрий_Ф
Дата добавления - 20.09.2020 в 01:23
Michael_S Дата: Воскресенье, 20.09.2020, 03:47 | Сообщение № 22
Группа: Друзья
Ранг: Старожил
Сообщений: 2005
Репутация: 372 ±
Замечаний: 0% ±

Excel2016
не люблю я эти длинные формулы... Особенно РАЗНДАТ мне не нравится, из-за глюков...
А если так:
[vba]
Код
Option Explicit
'функция вычисляет разность дат по григорианскому календарю
'в периоде, начиная с 1 января сотого года (01.01.0100)
'при это считаем, что между 01/01/2020 и 02/01/2020 прошло два дня; ДАТА1 меньше ДАТА2

'Михаил С., 20.09.2020
'для http://www.excelworld.ru/forum/2-45885-2

Function РАЗНОСТЬ_ДАТ_1900(ДАТА1 As Date, ДАТА2 As Date) As String
    Dim Deys&, Monts&, Yars&
    Deys = 1
    Do
        If Day(ДАТА2) = Day(ДАТА1) Then
            Exit Do
        End If
        ДАТА2 = ДАТА2 - 1
        Deys = Deys + 1
    Loop
    Do
        If Month(ДАТА2) = Month(ДАТА1) Then
            Exit Do
        End If
        ДАТА2 = DateAdd("m", -1, ДАТА2)
        Monts = Monts + 1
    Loop
    Yars = DateDiff("YYYY", ДАТА1, ДАТА2)
    РАЗНОСТЬ_ДАТ_1900 = Yars & " лет " & Monts & " мес " & Deys & " Дней"
End Function
[/vba]
К сообщению приложен файл: Data_Dif.xlsm(16.1 Kb)


Сообщение отредактировал Michael_S - Воскресенье, 20.09.2020, 03:48
 
Ответить
Сообщениене люблю я эти длинные формулы... Особенно РАЗНДАТ мне не нравится, из-за глюков...
А если так:
[vba]
Код
Option Explicit
'функция вычисляет разность дат по григорианскому календарю
'в периоде, начиная с 1 января сотого года (01.01.0100)
'при это считаем, что между 01/01/2020 и 02/01/2020 прошло два дня; ДАТА1 меньше ДАТА2

'Михаил С., 20.09.2020
'для http://www.excelworld.ru/forum/2-45885-2

Function РАЗНОСТЬ_ДАТ_1900(ДАТА1 As Date, ДАТА2 As Date) As String
    Dim Deys&, Monts&, Yars&
    Deys = 1
    Do
        If Day(ДАТА2) = Day(ДАТА1) Then
            Exit Do
        End If
        ДАТА2 = ДАТА2 - 1
        Deys = Deys + 1
    Loop
    Do
        If Month(ДАТА2) = Month(ДАТА1) Then
            Exit Do
        End If
        ДАТА2 = DateAdd("m", -1, ДАТА2)
        Monts = Monts + 1
    Loop
    Yars = DateDiff("YYYY", ДАТА1, ДАТА2)
    РАЗНОСТЬ_ДАТ_1900 = Yars & " лет " & Monts & " мес " & Deys & " Дней"
End Function
[/vba]

Автор - Michael_S
Дата добавления - 20.09.2020 в 03:47
alexa1965 Дата: Воскресенье, 20.09.2020, 09:31 | Сообщение № 23
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 196
Репутация: 11 ±
Замечаний: 0% ±

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

решение Вашего примера в 10 строке. 709110 дата 22.06.3048 года. Где то читал что для правильного исчисления Григорианского календаря обязательно добавить 2000 дней.
К сообщению приложен файл: 1682384.xlsx(9.6 Kb)


Главное не быть балабастиком
 
Ответить
Сообщение
Я попробовал подставить вашу формулу, получается что-то непонятное = 709110.

решение Вашего примера в 10 строке. 709110 дата 22.06.3048 года. Где то читал что для правильного исчисления Григорианского календаря обязательно добавить 2000 дней.

Автор - alexa1965
Дата добавления - 20.09.2020 в 09:31
Юрий_Ф Дата: Воскресенье, 20.09.2020, 12:02 | Сообщение № 24
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 228
Репутация: -3 ±
Замечаний: 0% ±

Excel 2010
alexa1965,
Цитата
Где то читал что для правильного исчисления Григорианского календаря обязательно добавить 2000 дней.

Здесь вы это и прочитали! :)


То, что мы делаем, завораживает!
Кстати! Я не могу всем нравиться! И это взаимно!
 
Ответить
Сообщениеalexa1965,
Цитата
Где то читал что для правильного исчисления Григорианского календаря обязательно добавить 2000 дней.

Здесь вы это и прочитали! :)

Автор - Юрий_Ф
Дата добавления - 20.09.2020 в 12:02
Michael_S Дата: Воскресенье, 20.09.2020, 12:18 | Сообщение № 25
Группа: Друзья
Ранг: Старожил
Сообщений: 2005
Репутация: 372 ±
Замечаний: 0% ±

Excel2016
обязательно добавить 2000 дней.
Не дней, а лет и не 2000, а каждые 400 лет календарь полностью повторяется, день в день. Просто 2000 кратно 400 и не надо считать сколько прибавить: 400, 800, 1200, 1600 - прибавляем 2000.
Юлианский календарь (старый стиль) повторяется каждые 28 лет.
:D
 
Ответить
Сообщение
обязательно добавить 2000 дней.
Не дней, а лет и не 2000, а каждые 400 лет календарь полностью повторяется, день в день. Просто 2000 кратно 400 и не надо считать сколько прибавить: 400, 800, 1200, 1600 - прибавляем 2000.
Юлианский календарь (старый стиль) повторяется каждые 28 лет.
:D

Автор - Michael_S
Дата добавления - 20.09.2020 в 12:18
Юрий_Ф Дата: Воскресенье, 20.09.2020, 12:44 | Сообщение № 26
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 228
Репутация: -3 ±
Замечаний: 0% ±

Excel 2010
Michael_S,
Это познавательно!
В самом деле - 2000 ЛЕТ!
А почему такая разница - Юлианский - 28, а Григорианский - аж 400!?
А есть формула перевода Юлианского календаря в Григорианский? Там же не по всем годам +13!


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


Сообщение отредактировал Юрий_Ф - Воскресенье, 20.09.2020, 12:47
 
Ответить
СообщениеMichael_S,
Это познавательно!
В самом деле - 2000 ЛЕТ!
А почему такая разница - Юлианский - 28, а Григорианский - аж 400!?
А есть формула перевода Юлианского календаря в Григорианский? Там же не по всем годам +13!

Автор - Юрий_Ф
Дата добавления - 20.09.2020 в 12:44
прохожий2019 Дата: Воскресенье, 20.09.2020, 13:13 | Сообщение № 27
Группа: Проверенные
Ранг: Обитатель
Сообщений: 363
Репутация: 61 ±
Замечаний: 0% ±

365 Beta Channel
А почему такая разница
в григорианском год, номер которого кратен 400 — високосный


Сообщение отредактировал прохожий2019 - Воскресенье, 20.09.2020, 15:27
 
Ответить
Сообщение
А почему такая разница
в григорианском год, номер которого кратен 400 — високосный

Автор - прохожий2019
Дата добавления - 20.09.2020 в 13:13
alexa1965 Дата: Воскресенье, 20.09.2020, 13:40 | Сообщение № 28
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 196
Репутация: 11 ±
Замечаний: 0% ±

2003> 2010> 2016
Цитата прохожий2019, 20.09.2020 в 13:13, в сообщении № 27 ()
Не дней, а лет


Да конечно Михаил, 2000 лет


Главное не быть балабастиком
 
Ответить
Сообщение
Цитата прохожий2019, 20.09.2020 в 13:13, в сообщении № 27 ()
Не дней, а лет


Да конечно Михаил, 2000 лет

Автор - alexa1965
Дата добавления - 20.09.2020 в 13:40
Michael_S Дата: Воскресенье, 20.09.2020, 16:39 | Сообщение № 29
Группа: Друзья
Ранг: Старожил
Сообщений: 2005
Репутация: 372 ±
Замечаний: 0% ±

Excel2016
Цитата прохожий2019, 20.09.2020 в 13:13, в сообщении № 27 ()
в григорианском год, номер которого кратен 400 — високосный
сначала нужно сказать, что год, кратный 100, не високосный, но кратный 400 - високосный.
В юлианском календаре каждый год, кратный 4 - високосный.

А есть формула перевода Юлианского календаря в Григорианский?
наверно можно придумать, но счас гугл/яндекс быстрее и проще...
 
Ответить
Сообщение
Цитата прохожий2019, 20.09.2020 в 13:13, в сообщении № 27 ()
в григорианском год, номер которого кратен 400 — високосный
сначала нужно сказать, что год, кратный 100, не високосный, но кратный 400 - високосный.
В юлианском календаре каждый год, кратный 4 - високосный.

А есть формула перевода Юлианского календаря в Григорианский?
наверно можно придумать, но счас гугл/яндекс быстрее и проще...

Автор - Michael_S
Дата добавления - 20.09.2020 в 16:39
прохожий2019 Дата: Воскресенье, 20.09.2020, 17:46 | Сообщение № 30
Группа: Проверенные
Ранг: Обитатель
Сообщений: 363
Репутация: 61 ±
Замечаний: 0% ±

365 Beta Channel
сначала нужно сказать
ну тогда уж начинать с основ астрономии, что такое день, год ... :p
вопрос был про
аж 400
на него я и ответил
 
Ответить
Сообщение
сначала нужно сказать
ну тогда уж начинать с основ астрономии, что такое день, год ... :p
вопрос был про
аж 400
на него я и ответил

Автор - прохожий2019
Дата добавления - 20.09.2020 в 17:46
Юрий_Ф Дата: Понедельник, 21.09.2020, 01:00 | Сообщение № 31
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 228
Репутация: -3 ±
Замечаний: 0% ±

Excel 2010
Цитата прохожий2019,
20.09.2020 в 17:46, в сообщении № 30
()
ну тогда уж начинать с основ астрономии, что такое день, год ...

А что, здесь был вопрос про астрономию?
Зачем вы это делаете? Это ваше любимое развлечение - унизить того, кто что-то спрашивает? Мол, я, такой здесь спец, а ты и этого не знаешь! Помнится, ваша вариация была ещё по другому поводу кому-то ещё:
Цитата
...тогда надо ещё рассказать, что такое слово, предложение...

Приёмчики одни и те же. Да, у вас знания по Exel много выше, чем у тех, кто задаёт вопросы или что-то у них не получается. Но зачем этот ваш сарказм? Не хотите помочь - не пишите ничего! На сайт приходят, чтобы получить помощь, а не испорченное настроение!
Вы ещё не замечаете: как только вы пишите что-то с сарказмом, сразу все уходят с данной ветки обсуждения! Никто не хочет получать отрицательные эмоции от вашего т.н. остроумия!


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


Сообщение отредактировал Юрий_Ф - Понедельник, 21.09.2020, 01:07
 
Ответить
Сообщение
Цитата прохожий2019,
20.09.2020 в 17:46, в сообщении № 30
()
ну тогда уж начинать с основ астрономии, что такое день, год ...

А что, здесь был вопрос про астрономию?
Зачем вы это делаете? Это ваше любимое развлечение - унизить того, кто что-то спрашивает? Мол, я, такой здесь спец, а ты и этого не знаешь! Помнится, ваша вариация была ещё по другому поводу кому-то ещё:
Цитата
...тогда надо ещё рассказать, что такое слово, предложение...

Приёмчики одни и те же. Да, у вас знания по Exel много выше, чем у тех, кто задаёт вопросы или что-то у них не получается. Но зачем этот ваш сарказм? Не хотите помочь - не пишите ничего! На сайт приходят, чтобы получить помощь, а не испорченное настроение!
Вы ещё не замечаете: как только вы пишите что-то с сарказмом, сразу все уходят с данной ветки обсуждения! Никто не хочет получать отрицательные эмоции от вашего т.н. остроумия!

Автор - Юрий_Ф
Дата добавления - 21.09.2020 в 01:00
Pelena Дата: Понедельник, 21.09.2020, 07:24 | Сообщение № 32
Группа: Админы
Ранг: Местный житель
Сообщений: 16646
Репутация: 3599 ±
Замечаний: ±

Excel 2010, 2016 & Mac Excel
Ответ на вопрос темы получен.
Юрий_Ф, с претензиями - в личку, плз. Не надо замусоривать форум.
Тему закрываю во избежание дальнейшего обмена любезностями.


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

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

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