내장 함수 VLOOKUP은 Excel에서 가장 강력한 함수 중 하나입니다. 그러나 여기에는 한 가지 중요한 단점이 있습니다. 즉, 테이블에서 원하는 값이 처음으로 나타나는 항목과 맨 오른쪽 열에서만 찾습니다. 하지만 마지막이 아닌 두 번째, 세 번째가 필요하다면?
다음과 같이 처리된 대출 테이블이 있다고 가정해 보겠습니다.
예를 들어 Mike에게 세 번째 대출 금액이 얼마인지 또는 John이 두 번째 계약을 체결한 시기를 알아야 합니다. 내장 함수 VLOOKUP 테이블에서 처음 나타나는 이름만 검색하는 방법을 알고 있으므로 도움이 되지 않습니다.
첫 번째 항목뿐만 아니라 후속(N번째) 항목도 검색하는 함수를 작성해 보겠습니다. 예를 들어 VLOOKUP2이라고 부르겠습니다.
메뉴 열기 서비스 - 매크로 - 편집기 Visual Basic , 새 모듈을 삽입 (메뉴 Insert - Module ) 거기에 이 함수의 텍스트를 복사합니다.
Function VLOOKUP2(Table As Range, _ SearchColumnNum As Integer, _ SearchValue As Variant, _ N As Integer, _ ResultColumnNum As Integer) 'moonexcel.com.ua Dim i As Integer Dim iCount As Integer For i = 1 To Table.Rows.Count If Table.Cells(i, SearchColumnNum) = SearchValue Then iCount = iCount + 1 End If If iCount = N Then VLOOKUP2 = Table.Cells(i, ResultColumnNum) Exit For End If Next i End Function
편집기를 닫습니다 Visual 기본 Excel로 돌아갑니다.
지금에 기능 마법사 카테고리에서 사용자 정의 VLOOKUP2 함수를 찾아서 사용할 수 있습니다. 함수의 구문은 다음과 같습니다.
=VLOOKUP2( 테이블 ; 열_번호_위치_우리_검색 ; 검색_값; 항목_번호 ; column_number_from_which_we_take_the_value )
즉, Mike에게 지급된 세 번째 대출 금액을 찾으려면 다음을 입력해야 합니다.
=VLOOKUP2(A2:A19; 1; "Mike"; 3; 4)