ФИЛЬТР нерабочих дней из диапазона / списка дат - PullRequest
0 голосов
/ 05 октября 2019

Я пытаюсь создать список дат между датой начала и датой окончания (сделано). Но теперь я хочу FILTER выходных из этого списка.

Дата начала определена, но дата окончания основана на количестве рабочих дней после даты начала. Проблема в том, что когда я создаю список по следующей формуле, все промежуточные даты включаются, и я предпринял многочисленные попытки FILTER указанных дат, используя WORKDAY.INTL и REGEXMATCH, но безуспешно. Можно ли изменить эту конкретную формулу или мне нужно начать с чего-то другого?

=ArrayFormula(TO_DATE(row(indirect("A"&A2):indirect("A"&B2))))

Вот пример того, что я сделал.

Вот что я получаю:

  • Пятница, 4 октября 2019 года
  • Суббота, 5 октября 2019 года
  • Воскресенье,6 октября 2019 года
  • понедельник, 7 октября 2019 года
  • вторник, 8 октября 2019 года
  • среда, 9 октября 2019 года
  • четверг, 10 октября, 2019
  • Пятница, 11 октября 2019
  • Суббота, 12 октября 2019
  • Воскресенье, 13 октября 2019

Вот чтоЯ после:

  • Пятница, 4 октября 2019 года
  • Понедельник, 7 октября 2019 года
  • Вторник, 8 октября 2019 года
  • Среда, 9 октября 2019 года
  • четверг, 10 октября 2019 года
  • пятница, 11 октября 2019 года
  • понедельник, 14 октября 2019 года
  • вторник,15 октября 2019 года
  • среда, 16 октября 2019 года
  • Четверг, 17 октября 2019 года

Ответы [ 2 ]

1 голос
/ 05 октября 2019

вы можете сделать это так:

=ARRAYFORMULA(FILTER(ROW(INDIRECT("A"&A2&":A"&B2)), 
     REGEXMATCH(TEXT(ROW(INDIRECT("A"&A2&":A"&B2)), "ddd"), "[^(Sat|Sun)]")))

0

1 голос
/ 05 октября 2019

Посмотрите, работает ли это

=query(ArrayFormula(TO_DATE(row(indirect("A"&A2):indirect("A"&B2)))), "where dayOfWeek(Col1) <> 7 and dayOfWeek(Col1) <> 1")
...