Вложенная функция AND внутри функции TEXTJOIN не возвращает результаты - PullRequest
0 голосов
/ 16 февраля 2019

enter image description here

Учитывая U-фактор и SHGC, мне нужно, чтобы соответствующие территориальные коды были объединены и выведены в ячейку B8.

Например,учитывая U-фактор 0,3 и SHGC 0,25, единственными территориями, которые имеют U-фактор <= 0,3 И SHGC <= 0,25, являются южно-центральные и южные территории.Вывод, который я желаю, - это соответствующие им коды территорий, «SC» и «S» соответственно.Таким образом, окончательный результат должен выглядеть так: «SCS». </p>

Формула, которую я разработал, выглядит следующим образом: TEXTJOIN("",TRUE,IF(AND(C2:C5<=A8,D2:D5<=A9),A2:A5,""))

Кажется довольно простым, но я получаю только пустую строку какрезультат.См. Изображение выше для справки

Чтобы продемонстрировать успешное использование моей функции без логики AND, я включил результаты TEXTJOIN при применении ТОЛЬКО к UFactor или SHGC в ячейках C8 и D8 соответственно.Только при объединении этих результатов с использованием функции AND все получается неправильно.Формула для получения контактированных результатов только для выхода UFactor в ячейке C8: =TEXTJOIN("",TRUE,IF(C2:C5<=A8,A2:A5,""))

Примечание: не забудьте использовать CTRL-SHIFT-ENTER, иначе вы получите ошибку, так как этоФормула массива.Заранее спасибо

1 Ответ

0 голосов
/ 16 февраля 2019

И (или ИЛИ в этом отношении) плохо работают с формулами массива.И AND, и OR используют форму циклического вычисления сами по себе, которая заполняет циклический расчет формулы массива.Вместо этого вам нужно вложить оператор IF.

' AND two conditions in an array formula
=TEXTJOIN("", TRUE, IF(C2:C5<=A8, IF(D2:D5<=A9, A2:A5, ""), ""))

' OR two conditions in an array formula
=TEXTJOIN("", TRUE, IF(C2:C5<=A8, A2:A5, IF(D2:D5<=A9, A2:A5, "")))

Завершить с помощью CSE.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...