как упростить v-lookup для сравнения данных между разными таблицами - PullRequest
0 голосов
/ 19 сентября 2019

У меня есть формула v-lookup для сравнения данных между различными листами (Лист-1, столбец A, B, C) с Листом-2, столбец-A Но я пишу очень длинную формулу, чтобы выполнить сравнение, и я хочуупростить это

IF(OR(ISNA(VLOOKUP(Table1[[#All],[Column-1]],Table2[[#All],[Column-1]],1,FALSE))=FALSE,ISNA(VLOOKUP(Table1[[#All],[Column-2]],Table2[[#All],[Column-1]],1,FALSE))=FALSE,ISNA(VLOOKUP(Table1[[#All],[Column-3]],Table2[[#All],[Column-1]],1,FALSE))=FALSE),"Yes","No")

enter image description here

Ответы [ 2 ]

1 голос
/ 19 сентября 2019

Попробуйте следующую формулу массива ...

enter image description here

D3, подтверждено с помощью CONTROL + SHIFT + ENTER и скопировано:

=IF(OR(ISNUMBER(MATCH(Table1[@[Column-1]:[Column-3]],Table2[Column-1],0))),"Yes","No")
0 голосов
/ 19 сентября 2019

Попробуйте это, если это для полного столбца:

IF(OR(ISNA(VLOOKUP(Sheet1!A:A,Sheet2!B:B,1,FALSE))=FALSE,ISNA(VLOOKUP(Sheet1!B:B,Sheet2!B:B,1,FALSE))=FALSE,ISNA(VLOOKUP(Sheet1!C:C,Sheet2!B:B,1,FALSE))=FALSE),"Yes","No")

Если вы хотите уменьшить, используйте Диспетчер имен для размещения:

A1 = Table1[[#All],[Column-1]]
B1 = Table1[[#All],[Column-2]]
C1 = Table1[[#All],[Column-3]]
B2 = Table2[[#All],[Column-1]]

Тогда:

IF(OR(ISNA(VLOOKUP(A1,B2,1,FALSE))=FALSE,ISNA(VLOOKUP(B1,B2,1,FALSE))=FALSE,ISNA(VLOOKUP(C1,B2,1,FALSE))=FALSE),"Yes","No")

Даже, вы можете избежать использования всей этой функции ISNA, как будто существует одна ИСТИНА, все будет верно.

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