Excel получить значение из другого листа на основе нескольких условий - PullRequest
0 голосов
/ 12 апреля 2019

enter image description here У меня есть два листа в Excel, Sheet1 и Sheet2.Они оба содержат 3 столбца A, B и C.

Моя цель - получить значения от C на Листе2 до C на Листе1, основываясь на условиях, сравнивающих значения в A и B одновременно.

A в Sheet2 содержит числа, сгруппированные вместе, например, 11,11,13,13,12,12.A в Sheeet1 содержит некоторые из этих чисел, но не обязательно в том же порядке или в том же количестве строк, например 11,11,12,13,13.

B в Sheet2 также содержит числа, подобные 2,1,1,2,1,2.B в Sheet1 снова содержит часть этих чиселНапример, 1,2,1,1,2.

Существуют только уникальные комбинации пар в A и B (в указанном порядке) для Sheet1 и Sheet2 соответственно.

C вSheet2 состоит из чисел, связанных с определенной комбинацией чисел в A и B.

Теперь я хочу заполнить C в Sheet1 на основе значений из C в Sheet2.Например, для C1: Получите значение (строка x) в «Sheet2»! Cx, чтобы «Sheet1»! A1 = «Sheet2»! Ax, И «Sheet1»! B1 = «Sheet2»! Bx (которое будет2-й ряд в этом примере).

Я думал о чем-то вроде

C1=INDEX('Sheet2'!C:C;...)

, где

...=IF(AND(MATCH(A1;'Sheet2'!A:A;0);MATCH(B1;'Sheet2'!B:B;0));?;?)

? = Я не знаю, что я здесь напишу, но я бы хотел, чтобы возвращаемое значение IF было номером строки, где оба условия выполняются.

Проблема в том, что MATCH возвращает только первое число в A и B соответственно, для которого условие истинно, в то время как Iиметь несколько неуникальных чисел в A. Я хотел бы просмотреть весь Sheet2! A: A и получить все совпадающие значения, а затем просмотреть соответствующий Sheet2! B: B, чтобы проверить второе условие.

Или может быть совершенно другой взгляд на эту проблему.У кого-нибудь есть предложения, как это решить?

Ответы [ 2 ]

1 голос
/ 12 апреля 2019

Вот способ просмотра нескольких значений в функции MATCH(), например:

Лист1:

enter image description here

Лист 2:

enter image description here

Формула в C2 sheet1:

{=IFERROR(INDEX(Sheet2!$C$2:$C$6,MATCH(Sheet1!A2&Sheet1!B2,Sheet2!$A$2:$A$6&Sheet2!$B$2:$B$6,0)),"")}

Примечание: Это формула массива, поэтому введите через Ctrl Shift Введите

Результат:

enter image description here

0 голосов
/ 12 апреля 2019

С1 Формула =INDEX(Sheet2!C:C;MATCH(A1;Sheet2!A:A;0);MATCH(B1;Sheet2!B:B;0))

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