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

Вход

Регистрация

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

 

= Мир MS Excel/Вычисление выслуги лет по сумме периодов - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Вычисление выслуги лет по сумме периодов
Alexandr_VB Дата: Среда, 02.12.2015, 16:40 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 2
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Будьте добры, как вычислить выслугу лет в таблице, если она состоит из нескольких периодов?
Нашел формулу на один период, но суммировать не выходит! Файл прилагается!
К сообщению приложен файл: ____Excel.xlsx (27.4 Kb)
 
Ответить
СообщениеБудьте добры, как вычислить выслугу лет в таблице, если она состоит из нескольких периодов?
Нашел формулу на один период, но суммировать не выходит! Файл прилагается!

Автор - Alexandr_VB
Дата добавления - 02.12.2015 в 16:40
Pelena Дата: Среда, 02.12.2015, 16:49 | Сообщение № 2
Группа: Админы
Ранг: Местный житель
Сообщений: 19401
Репутация: 4549 ±
Замечаний: ±

Excel 365 & Mac Excel
Посмотрите эту тему


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

Автор - Pelena
Дата добавления - 02.12.2015 в 16:49
SLAVICK Дата: Среда, 02.12.2015, 16:53 | Сообщение № 3
Группа: Модераторы
Ранг: Старожил
Сообщений: 2290
Репутация: 766 ±
Замечаний: 0% ±

2019
Может просто суммой периодов?
Код
=РАЗНДАТ(D3+F3+H3;E3+G3+I3;"y")
К сообщению приложен файл: _Excel.xlsx (20.6 Kb)


Иногда все проще чем кажется с первого взгляда.

Сообщение отредактировал SLAVICK - Среда, 02.12.2015, 16:54
 
Ответить
СообщениеМожет просто суммой периодов?
Код
=РАЗНДАТ(D3+F3+H3;E3+G3+I3;"y")

Автор - SLAVICK
Дата добавления - 02.12.2015 в 16:53
МВТ Дата: Среда, 02.12.2015, 21:11 | Сообщение № 4
Группа: Проверенные
Ранг: Обитатель
Сообщений: 476
Репутация: 137 ±
Замечаний: 0% ±

Excel 2007
Делал когда-то в другой теме. Вычисление идет по формуле: каждые 30 дней - месяц, каждые 12 месяцев - год[vba]
Код
Function СТРАХОВОЙ_СТАЖ(Дата_Начала As Range, Дата_Окончания As Range, Optional Часть As String = "") As String
    Dim Interval As Long, Y As Long, M As Long, D As Long, I As Long
    Dim S_arr, E_arr
    If Дата_Начала.Rows.Count <> Дата_Окончания.Rows.Count Then
        MsgBox "Не совпадает количество дат в двух диапазонах", vbInformation
        Exit Function
    End If
    S_arr = Дата_Начала.Value
    E_arr = Дата_Окончания.Value
    For I = 1 To UBound(S_arr)
        If IsDate(S_arr(I, 1)) And IsDate(E_arr(I, 1)) Then Interval = Interval + E_arr(I, 1) - S_arr(I, 1) + 1
    Next
    Y = Int(Interval / 360)
    M = Int((Interval - (Y * 360)) / 30)
    D = Interval - Y * 360 - M * 30
    Select Case LCase(Часть)
        Case "г": СТРАХОВОЙ_СТАЖ = Y
        Case "м": СТРАХОВОЙ_СТАЖ = M
        Case "д": СТРАХОВОЙ_СТАЖ = D
        Case Else: СТРАХОВОЙ_СТАЖ = Y & " лет " & M & " мес. " & D & " дн."
    End Select
End Function
[/vba]
 
Ответить
СообщениеДелал когда-то в другой теме. Вычисление идет по формуле: каждые 30 дней - месяц, каждые 12 месяцев - год[vba]
Код
Function СТРАХОВОЙ_СТАЖ(Дата_Начала As Range, Дата_Окончания As Range, Optional Часть As String = "") As String
    Dim Interval As Long, Y As Long, M As Long, D As Long, I As Long
    Dim S_arr, E_arr
    If Дата_Начала.Rows.Count <> Дата_Окончания.Rows.Count Then
        MsgBox "Не совпадает количество дат в двух диапазонах", vbInformation
        Exit Function
    End If
    S_arr = Дата_Начала.Value
    E_arr = Дата_Окончания.Value
    For I = 1 To UBound(S_arr)
        If IsDate(S_arr(I, 1)) And IsDate(E_arr(I, 1)) Then Interval = Interval + E_arr(I, 1) - S_arr(I, 1) + 1
    Next
    Y = Int(Interval / 360)
    M = Int((Interval - (Y * 360)) / 30)
    D = Interval - Y * 360 - M * 30
    Select Case LCase(Часть)
        Case "г": СТРАХОВОЙ_СТАЖ = Y
        Case "м": СТРАХОВОЙ_СТАЖ = M
        Case "д": СТРАХОВОЙ_СТАЖ = D
        Case Else: СТРАХОВОЙ_СТАЖ = Y & " лет " & M & " мес. " & D & " дн."
    End Select
End Function
[/vba]

Автор - МВТ
Дата добавления - 02.12.2015 в 21:11
Alexandr_VB Дата: Четверг, 03.12.2015, 09:44 | Сообщение № 5
Группа: Пользователи
Ранг: Прохожий
Сообщений: 2
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Спасибо!!! Варианты конечно есть, но "желтые" поля очень массивны, как их перевести в одну ячейку со значением ДАТА "1 год. 1 мес. 1 день" ???????
К сообщению приложен файл: __.xlsx (21.3 Kb)
 
Ответить
СообщениеСпасибо!!! Варианты конечно есть, но "желтые" поля очень массивны, как их перевести в одну ячейку со значением ДАТА "1 год. 1 мес. 1 день" ???????

Автор - Alexandr_VB
Дата добавления - 03.12.2015 в 09:44
Pelena Дата: Четверг, 03.12.2015, 10:21 | Сообщение № 6
Группа: Админы
Ранг: Местный житель
Сообщений: 19401
Репутация: 4549 ±
Замечаний: ±

Excel 365 & Mac Excel
Формула из Готовых решений
К сообщению приложен файл: -2-.xlsx (22.1 Kb)


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816
 
Ответить
СообщениеФормула из Готовых решений

Автор - Pelena
Дата добавления - 03.12.2015 в 10:21
  • Страница 1 из 1
  • 1
Поиск:

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