Excel: получить месяцы между начальной и конечной датой в данном году или месяцы до конечной даты, если начало в предыдущем году - PullRequest
0 голосов
/ 29 августа 2018

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

Получить дату соответствия было просто. Технически получить количество занятых и предложенных месяцев очень просто ... Пока я не попаду в ситуации, охватывающие несколько лет. Для целей моего отчета мне нужно знать только данные за 2017 год. Например, R3 работает только два месяца в 2017 году, поэтому мне нужно, чтобы "#Mon Emp" было 2. Я сейчас использую = DATEDIF (F2, H2 + 15, "m") , но это дает мне полные 6 месяцев.

Затем я также сталкиваюсь с проблемой, если в "Сроке срока" нет значения (т.е. они все еще заняты). Я знаю, что должна быть формула, которая может мне помочь, но я не слишком разбираюсь в формулах Excel, и я не смог найти что-то похожее в других вопросах. Я не могу просто изменить дату найма на 01.01.2017, потому что это портит право.

Data set up

Большое спасибо за любую помощь!

1 Ответ

0 голосов
/ 30 августа 2018

Вот подход к тому, что вы ищете, предполагая следующее:

  • «Дата найма» - это столбец F и всегда самая ранняя дата
  • «Дата соответствия» - это столбец G, и он всегда раньше, чем «Срок действия»
  • «Срок действия» - это столбец H, который либо пуст, либо является датой в течение 2017 года
  • Приведенные ниже формулы выводят количество полных месяцев, использованных в течение 2017 года, вы должны иметь возможность довольно легко их перевести для количества месяцев, которые были предложены в течение этого года (примеры ниже показывают формулы для данных в строке 2)

Формула ...

IF(ISBLANK(H2),IF(YEAR(F2)=2017,DATEDIF(F2,DATE(2018,1,1),"m"),12),IF(YEAR(F2)=YEAR(H2),DATEDIF(F2,H2,"m"),DATEDIF(DATE(YEAR(H2)-1,12,31),H2,"m")))

Разбить его ...

Если «Срок срока» пуст: ISBLANK(H2), то получить количество месяцев, использованных до конца 2017 года.

Раздел формулы для определения количества месяцев, использованных до конца 2017 года: IF(YEAR(F2)=2017,DATEDIF(F2,DATE(2018,1,1),"m"),12)

Если «Дата найма» была в течение 2017 года: YEAR(F2)=2017, то получить количество месяцев от «Дата найма» до конца 2017 года: DATEDIF(F2,DATE(2018,1,1),"m"), в противном случае предположим, что «Дата найма» - до 2017 года, в результате получается 12 месяцы: 12.

Если «Дата срока» не пуста, то укажите количество месяцев, использованных в 2017 году, через «Срок срока».

Раздел формулы для определения количества месяцев, отработанных в 2017 году через «Срок»:

IF(YEAR(F2)=YEAR(H2),DATEDIF(F2,H2,"m"),DATEDIF(DATE(YEAR(H2)-1,12,31),H2,"m"))

Если «Дата найма» и «Срок действия» совпадают: YEAR(F2)=YEAR(H2), тогда получите разницу между датами: DATEDIF(F2,H2,"m"), в противном случае получите разницу между 31 декабря предыдущего года и «Дата окончания» ": DATEDIF(DATE(YEAR(H2)-1,12,31),H2,"m").

Важное замечание ...

Вы можете обновить формулу, чтобы она работала для любого расчетного года, заменив 2017 и DATE(2018,1,1) в разделе формулы, в котором указано количество месяцев, использованных до конца 2017 года, ссылками на ячейки, в которые можно ввести соответствующие значения для выполнения расчетов за разные годы.

...