Excel Vlookup 범위 또는 함수인 경우

Excel Vlookup 범위 또는 함수인 경우

저는 아래 예에 적합한 공식을 찾기 위해 애쓰고 있습니다(물음표 참조!). 내가 하려는 것은 2개의 데이터 세트를 병합하는 것입니다. 문제는 공통 식별자가 항상 정확히 동일하지는 않지만 그럼에도 불구하고 상당히 유사하다는 것입니다. 함수의 마지막 인수(조회 범위)를 true로 만들거나 대신 숫자 2를 사용하여 vlookup 함수를 사용해 보았습니다(식별자에 2를 추가하려고 시도했지만 함수가 가장 가까운 식별자(즉, 7800)의 값을 반환했습니다. ).

첫 번째 데이터세트:

식별자 =>0000000161200103 가격 =>7787

식별자 =>0000000161200712 가격 =>7800

식별자 =>0000001961200803 가격 =>9000

두 번째 데이터세트:

식별자 =>0000000161200103 가격 =>7787

식별자 =>0000000161200801 가격 => ????? 가장 가까운 값(7800) 또는 #N/A를 반환합니다.

내가 반환해야 할 것은 값입니다9000. 이상적으로는 vlookup이 검색하는 조회 값 범위(위 또는 아래)를 어떻게든 조작할 수 있어야 하며, 정확히 일치하는 항목이 없는 경우 조회 값으로 다음에 수행할 작업을 처리할 수 있어야 합니다. 아마도 if 함수나 isna의 iferror를 사용할 수 있습니다. .하지만 거기까지 갈 수가 없어요.

내가 시도한 함수는 다음과 같습니다. =VLOOKUP($A2;A2:B4;1;TRUE) -> 셀 B3 반환 =VLOOKUP($A2;A2:B4;1;1) -> 셀 B3 반환 =VLOOKUP($ A2;A2:B4;1;2) -> 셀 B3을 반환합니다. =IF(ISNA(VLOOKUP($A2;A2:B4;1;1;FALSE)) = TRUE; VLOOKUP(($A2+2);A2: B4;1;FALSE); VLOOKUP($A2;A2:B4;1;FALSE)) -> #N/A를 반환합니다.

어떤 도움이라도 진심으로 감사드립니다!

답변1

네 번째 인수를 0으로 사용하여 vlookup을 수행할 수 있습니다. 일치하는 항목이 없으면 오류가 반환됩니다. if 문으로 감싸서 거기에서 무엇을 할지 결정할 수 있습니다.

if(vlookup("0011..",a1:a4,1,0),vlookup("0011..",a1:b4,2,0),..dosomethingelse..)

관련 정보