TEXTJOIN на основе нескольких столбцов и нескольких условий IF - PullRequest
0 голосов
/ 22 мая 2019

Я пытаюсь сделать TEXTJOIN на основе нескольких столбцов, в этом случае столбцы B и D в выбранном диапазоне (если столбец A = G9 и столбец C = H9), игнорируя при этом элементы в столбце D, которые не находятся в диапазоне G2: G5 (если столбец D = элемент в диапазоне G2: G5).Все, что я пытаюсь сделать, похоже, приводит к NA #

enter image description here

1 Ответ

0 голосов
/ 22 мая 2019

Будет ли это работать:

=TEXTJOIN(" | ",TRUE,IF(A2:A17=G9,IF(C2:C17=H9,IF(D2:D17=TRANSPOSE(G2:G5),E2:E17,""))))

Подтверждено с помощью Ctrl Shift Ввод

К сожалению, у меня нет текстового соединения и я не могу проверить себя.

Для уточнения, я полагаю, вам нужна функция TRANSPOSE(). Прямо сейчас вы сравниваете вертикальный диапазон с вертикальным диапазоном. Это может вызвать проблемы, ошибки N/A#, из-за разного размера сравниваемых массивов. Я сам был смущен этим поведением и задал вопрос по этому вопросу на здесь . Полученный ответ был очень полезен для уточнения этого поведения в Excel.

Надеюсь, это решит вашу проблему:)


EDIT

Хотелось бы поэкспериментировать с TEXTJOIN(), чтобы помочь вам, но чтобы иметь временный патч, пока кто-то на самом деле не сможет вам помочь, вы можете попробовать реализовать некоторые SUBSTITUTE() функции для перехвата значений FALSE следующим образом :

=SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(TEXTJOIN(" | ",TRUE,IF(A2:A17=G9,IF(C2:C17=H9,IF(D2:D17=TRANSPOSE(G2:G5),E2:E17,""))))," | FALSE ",""),"| FALSE",""),"FALSE | ","")

Введено как массив

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