ЕСЛИ (VLOOKUP больше, чем число), то получить значение из той же строки в другом листе
Прочитав несколько постов на этом и других форумах, не добившись успеха и не обнаружив схожих проблем, я решил попытать счастья с собственным постом. Я постараюсь объяснить проблему в меру своих возможностей без картинок из excel. Надеюсь, вы поймете.
У меня есть два листа.
Лист 1
ProductID | Period | Comment
123 2.test This is bad
524 2.test This is bad
123 3.test This is bad
123 3.test This is bad
123 4.test This is good
123 4.test This is good
Лист 2
Comment | ProductID
This is bad 123
Я хочу получить комментарий от Sheet1 на основе ProductID из Sheet2. Тем не менее, я хочу, чтобы комментарий только, если число в столбце периода больше 3. Например, "2.test" не в порядке, но "4.test" хорошо.
Моя текущая формула DAX (расположена в столбце " Комментарий" на листе 2) описана ниже. Стоит упомянуть, так как из моей иллюстрации листов не ясно, является ли B2 ячейкой, содержащей 123 в столбце ProductID в Sheet2.
=IF(LEFT(VLOOKUP(B2;Sheet1!$A$1:$C$10;2;FALSE))>3;VLOOKUP(B2;Sheet1!$A$1:$C$10;3;FALSE);x)
Эта формула работает только наполовину. Условие в формуле IF работает. Тем не менее, "значение / действие, если истина" - это та часть, с которой я столкнулся. После нахождения правильного productID, где "X.test" больше 3, я хочу получить комментарий к этой строке. В настоящее время я снова использую VLOOKUP, но при этом будет найден только комментарий, связанный с первым идентификатором продукта, который он найдет, а не если период в той же строке больше 3.
Результат, который я ищу, это "Это хорошо" в Sheet2 в столбце " Комментарий".
Я пытался использовать матч, строку и индекс. Однако комбинация между ними может быть неправильной. Решение может быть прямо перед моими глазами, даже не осознавая этого.
Если дело неясно, пожалуйста, дайте мне знать. Заранее спасибо!
1 ответ
Я добавил IFERROR
в случае VLOOKUP
не находит идентификатор Как утверждает @Alex M, вы пропустили количество возвращаемых символов.
if(left(iferror(vlookup(B2;Sheet1!$A$1:$C$10;2;0);1);1)>3;vlookup(B2;Sheet1!$A$1:$C$10;2;0);x)
Надеюсь, что это помогает Ура