У меня есть две разные вкладки в Excel. В Tab1 есть три столбца (ID1, ID2 и Значение). В Tab2 есть два столбца (ID1, ID2), и я пытаюсь написать функцию, которая будет переводить "Значение" из Tab1 в третий столбец Tab2, если ID1 и ID2 совпадают на обеих вкладках. Я пробовал писать функции через VLOOKUP и INDEX (учитывая другие вопросы / ответы о переполнении STACKS), но мне сложно разобраться в этом. Все советы будут оценены!
2 ответа
На второй вкладке используйте MATCH, чтобы найти строки, соответствующие ID1 и ID2 в TAB1. Если строка одинакова, используйте INDEX для получения значения. Я сделал все это в одной формуле ниже, но если вы новичок в MATCH и INDEX, вы можете поместить кусочки формулы в разные столбцы, чтобы убедиться, что вы понимаете.
Вы не говорите, что хотите, чтобы значение было во вкладке 2, если ID1 и ID2 не совпадают, поэтому я сделал это "не соответствует". (Вы можете вместо этого использовать пробел или ноль.)
Вот формула для столбца на вкладке 2, где вы хотите значение. Я предположил, что ID1 находится в столбце A, а ID2 - в столбце B на обеих вкладках.
В строке 2 таблицы Tab2 вы можете использовать следующие формулы:
Столбец C: Match($A2,'Tab1'!$A:$A,0)
Столбец D: Match($b2,'Tab1'!$B:$B,0)
Столбец E: IF($C2=$D2,INDEX('Tab1'!$C:$C,$C2),"no match")
Очевидно, это может быть объединено в одном операторе if, если вы того пожелаете. Если нет совпадений для любого из идентификаторов, вы получите ошибку # N/A. Вы можете избежать этого, используя ISNA вокруг возвращаемого значения в столбце E.
Используйте SUMIFS()
=SUMIFS(Tab1!C:C,Tab1!A:A,A2,Tab1!B:B,B2)
Посмотрите этот ответ StackOverflow:
https://stackoverflow.com/questions/42492758/vlookup-using-2-columns-to-reference-another