Поиск статуса по неуникальным имени клиента и адресу
Необходимо вывести значения из столбца 3 на Листе 1.
Не получается вывести текстовый результат с помощью формулы VLOOKUP. Вылетает ошибка: "Аргумент Параметр 3 в функции VLOOKUP поддерживает только значения типа "число"".
Пробовал обойти с помощью DGET(ошибка с возвратом нескольких значений), INDEX(MATCH, не получилось.
=ARRAYFORMULA(IF(AND(ISBLANK($A$2:A);ISBLANK($B$2:B));"";VLOOKUP({$A$2:A&"|"&$B$2:B};{'Лист1'!$A$2:$A&"|"&'Лист1'!$B$2:$B};{'Лист1'!$C$2:$C};false)))
Ответы (3 шт):
Сначала ищем номер подходящей строки, потом в столбце по номеру строки находим нужный статус.
=ArrayFormula(INDEX('Лист1'!$C$2:$C;MAX(IF('Лист1'!$A$2:$A=A2;IF('Лист1'!$B$2:$B=B2;ROW('Лист1'!$B$2:$B)-1)))))
Два условия разнесены по двум ЕСЛИ для обрезания лишних вычислений
Вышел из ситуации таким образом =ARRAYFORMULA(IF(({$A$2:A&""&$B$2:B}="");"";regexreplace(VLOOKUP({$A$2:A&""&$B$2:B};{'Лист1'!$A$2:$A&""&'Лист1'!$B$2:$C};2;false);$A$2:A;"")))
не идеально конечно, но работает...
Не понимаю, что вас остановило от использования конкатенации? Возможно, я неправильно прочитал о проблеме, но вот это, вроде, работает
=ARRAYFORMULA(VLOOKUP(
A:A&B:B;
{
'Лист1'!A:A&'Лист1'!B:B\
'Лист1'!C:C
};
2;
))


