при первой публикации, так что терпите меня.
Я успешно разработал лист Google, который автоматически создает карту кадрирования на основе плана кадрирования в другой вкладке («Наследование»)
В «Сукцессии» актуальны следующие столбцы: Столбец А - Столбец идентификатора наследования C - Столбец идентификатора строки R - Столбец Даты посадки W - Дата сбора урожая
В «Карте 1А» I создали карту нашего поля, в которой столбец B представляет идентификатор строки, а столбцы справа - неделю года, даты начала которого определены в строке 2.
Моя цель - отобразить каждый правопреемство в соответствующей строке на протяжении всего времени, в течение которого оно будет находиться в земле (от даты посадки до даты сбора урожая). У меня будут разные последовательности, занимающие одну и ту же строку в разных диапазонах дат.
Я выполнил это в три этапа:
Шаг 1 Каждая ячейка (кроме самого левого столбца) содержит формулу, которая возвращает, и текст объединяет (если есть несколько результатов) любые последовательности в этой строке в течение этой недели - если только если возвращаемое значение отличается от значения, которое будет возвращать ячейка слева. В результате идентификатор преемственности отображается только на той неделе, с которой он начинается. Формула в этих ячейках:
=Iferror(If((Textjoin(" / ",True,FILTER(Successions!$A$2:$A$647,RegExMatch(Successions!$C$2:$C$647,$B3),Successions!$R$2:$R$647<D$2,Successions!$W$2:$W$647>D$2)))=(Textjoin(" / ",True,Iferror(FILTER(Successions!$A$2:$A$647,RegExMatch(Successions!$C$2:$C$647,$B3),Successions!$R$2:$R$647<C$2,Successions!$W$2:$W$647>C$2),""))),"",(Textjoin(" / ",True,FILTER(Successions!$A$2:$A$647,RegExMatch(Successions!$C$2:$C$647,$B3),Successions!$R$2:$R$647<D$2,Successions!$W$2:$W$647>D$2)))),"")
Код для самого левого столбца, который я не хотел проверять ячейку слева:
=Iferror((Textjoin(" / ",True,FILTER(Successions!$A$2:$A$647,RegExMatch(Successions!$C$2:$C$647,$B3),Successions!$R$2:$R$647<C$2,Successions!$W$2:$W$647>C$2))),"")
Шаг 2 Поскольку каждая ячейка содержит формулу, я не мог получить идентификатор преемственности, чтобы вылиться в соседнюю ячейку и таким образом быть читаемым. Чтобы решить эту проблему, у меня есть смежная вкладка, называемая «Финал карты», которая отображает «карту 1А» через формулу массива. Поскольку он не переносит формулы, а только значения, он позволяет перетекать тексту.
Шаг 3 Условное форматирование применяется к «Окончанию карты» через функцию «Пользовательская формула». Там будет правило для каждого типа культур. Каждая последовательность автоматически окрашивается в цвет его типа обрезки, и этот цвет заполняет все ячейки на протяжении всей последовательности.
У меня такой вопрос: Как я мог выполнить sh это такое же отображение более эффективным способом? В настоящее время любое обновление последовательности занимает от 30 секунд до минуты. Индикаторы выполнения убивают меня и в основном делают этот действительно крутой инструмент непригодным для целей планирования культур, во время которого мы часто переходим от данных к карте для принятия решений о размещении.
- Как вы думаете, это Возможно ли использовать пользовательский сценарий, который передает данные, а не извлекает данные?
- Будет ли он отображаться быстрее, или способ, которым я делаю это наиболее эффективно?
Хотя это это мой главный вопрос, я, безусловно, открыт для любых ваших советов по улучшению скорости, просто уточняя мой текущий метод.
Заранее благодарен за любую помощь, которую вы можете предоставить!