Nano Hash - криптовалюты, майнинг, программирование

Массив дат начала и окончания, где текущая дата начала = предыдущая дата окончания +1 WORKDAY

Можно ли создать два столбца дат (начало и конец) только с начальной датой начала и количеством дней для каждой задачи, используя одну формулу? Я могу перетаскивать формулы вниз, но я бы предпочел гибкость ARRAYFORMULA, если это вообще возможно.

У меня есть список задач (который будет постоянно меняться) с количеством дней на выполнение каждой задачи. У меня также есть определенная дата начала. Я могу узнать даты окончания с помощью WORKDAY

=ArrayFormula(IF(LEN(B2:B),WORKDAY.INTL(C2:C-1,B2,6,),))

, но попытка автоматически заполнить следующие дни начала всегда приводит к циклической ссылке.

=ArrayFormula(WORKDAY.INTL(C2:C,B2:B,6,))

Следующая проблема находится в переменной [выходные] функции WORKDAY. Поскольку мои следующие даты начала не всегда приходятся на один и тот же день, цифра «6» не всегда точна, из-за чего выходные дни непреднамеренно отображаются как допустимые рабочие дни.

Вот мой тестовый лист

введите здесь описание изображения


Ответы:


1

почему бы не сделать это так:

вставьте в ячейку D2:

=ARRAYFORMULA(FILTER(
 QUERY(TO_DATE(ROW(INDIRECT(DATEVALUE(C2)&":"&DATEVALUE(C2)+SUM(B2:B)*2))), 
 "where not dayofweek(Col1) matches '1|7'"), 
 IF(REGEXMATCH(TO_TEXT(ROW(INDIRECT("A1:A"&COUNTA(
 QUERY(TO_DATE(ROW(INDIRECT(DATEVALUE(C2)&":"&DATEVALUE(C2)+SUM(B2:B)*2))), 
 "where not dayofweek(Col1) matches '1|7'"))))), "^"&JOIN("$|^", 
 IF(A2:A="",,MMULT(TRANSPOSE((ROW(A2:A)<=TRANSPOSE(ROW(A2:A)))*(B2:B)), 
 SIGN(B2:B))))&"$"), "♀", )="♀"))

вставьте в ячейку C3:

=ARRAYFORMULA(IF(A3:A="",,FILTER(
 QUERY(TO_DATE(ROW(INDIRECT(DATEVALUE(C2)&":"&DATEVALUE(C2)+SUM(B2:B)*2))), 
 "where not dayofweek(Col1) matches '1|7'"), 
 IF(REGEXMATCH(TO_TEXT(ROW(INDIRECT("A1:A"&COUNTA(
 QUERY(TO_DATE(ROW(INDIRECT(DATEVALUE(C2)&":"&DATEVALUE(C2)+SUM(B2:B)*2))), 
 "where not dayofweek(Col1) matches '1|7'"))))), "^"&JOIN("$|^", 
 IF(A2:A="",,MMULT(TRANSPOSE((ROW(A2:A)<=TRANSPOSE(ROW(A2:A)))*(B2:B)), 
 SIGN(B2:B))+1))&"$"), "♀", )="♀")))

0


со списком праздников:

=ARRAYFORMULA(FILTER(
 QUERY(TO_DATE(ROW(INDIRECT(DATEVALUE(C2)&":"&DATEVALUE(C2)+SUM(B2:B)*2))), 
 "where not dayofweek(Col1) matches '1|7' and not Col1 matches '"&
 TEXTJOIN("|", 1, H2:H)&"'"), 
 IF(REGEXMATCH(TO_TEXT(ROW(INDIRECT("A1:A"&COUNTA(
 QUERY(TO_DATE(ROW(INDIRECT(DATEVALUE(C2)&":"&DATEVALUE(C2)+SUM(B2:B)*2))), 
 "where not dayofweek(Col1) matches '1|7' and not Col1 matches '"&
 TEXTJOIN("|", 1, H2:H)&"'"))))), "^"&JOIN("$|^", 
 IF(A2:A="",,MMULT(TRANSPOSE((ROW(A2:A)<=TRANSPOSE(ROW(A2:A)))*(B2:B)), 
 SIGN(B2:B))))&"$"), "♀", )="♀"))

0

18.12.2019
  • Это прекрасно работает! Можно ли использовать список праздников аналогично WORKDAY? 19.12.2019
  • Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..