여러 Excel 시트의 VLOOKUP 및 IF

여러 Excel 시트의 VLOOKUP 및 IF

통합 문서에는 아래와 같이 두 개의 Excel 시트가 있습니다.

시트 1 & 2:

여기에 이미지 설명을 입력하세요

아래는 두 시트 사이의 필드 관계입니다.

  • EID는 EmID와 동일합니다.
  • DepID는 종속 ID와 동일합니다.
  • DepDOB는 종속DOB와 동일합니다.

EID와 EmID를 비교하고 싶습니다. 일치하는 경우 DepID와 종속 ID를 다시 비교합니다. DepID가 공백인 경우 DepDOB를 종속DOB와 비교합니다. 이 모든 내용이 사실인 경우 Sheet2에서 종속성 FirstName 및 종속성 이름을 가져와 시트 1의 새 열에 복사합니다.

제가 의도한 결과는 아래 이미지를 참조하세요.

산출:

여기에 이미지 설명을 입력하세요

이를 달성하는 방법을 알려주십시오. VLOOKUP과 IF를 합쳐야 한다면 수식을 알려주세요. 악몽을 꾸게 만드네요 :(

답변1

요청에 따른 솔루션

요청한 방식으로 이를 수행하는 간단한 방법은 도우미 열을 사용하는 것입니다. 시트 1이 A:F 열이 표시되고 시트 2에도 A:F가 표시되는 출력 예제와 유사하다고 가정해 보겠습니다. 각 시트의 도우미 열에 G열을 사용한다고 가정해 보겠습니다.

도우미 열은 세 가지 비교 값을 연결합니다. 따라서 각 시트에는 G2에 다음이 포함됩니다.

=A2&E2&F2

각 시트의 열 아래로 수식을 복사합니다. 그런 다음 이 값을 비교하여 필요한 레코드를 찾으세요.

VLOOKUP에서는 조회 열이 배열의 가장 왼쪽에 있어야 합니다. 이러한 제한이 없는 INDEX와 MATCH를 사용하여 동일한 스타일의 조회를 수행할 수 있습니다. 시트 1, C2에는 다음이 포함됩니다.

=INDEX(sheet2!B:C,MATCH(G2,sheet2!G:G,0),1)

그리고 D2에서는:

=INDEX(sheet2!B:C,MATCH(G2,sheet2!G:G,0),2)

이것을 열 아래로 복사하세요. MATCH는 시트 2의 행과 일치하는 키를 찾고 해당 이름을 반환합니다.

스크린샷

도우미 열을 보고 싶지 않으면 숨길 수 있습니다. DepDOB와 관련된 키가 날짜처럼 보이지 않는 이유가 궁금하다면 Excel이 날짜를 저장하는 데 사용하는 내부 표현을 사용하기 때문입니다.

더 간단한 솔루션

이 경우 레코드에 이미 포함된 이름 및 성 필드를 채우는 데 필요한 모든 정보가 있습니다. 도우미 열과 조회를 사용하는 대신 DepName 필드만 구문 분석할 수 있습니다. C2는 다음과 같습니다.

=LEFT(B2,FIND(" ",B2)-1)

D2는 다음과 같습니다.

=RIGHT(B2,LEN(B2)-FIND(" ",B2))

관련 정보