KutoolsforOffice— 하나의 솔루션, 다섯 가지 강력한 도구。적은 노력으로 더 큰 성과。

다른 통합 문서에서 값을 조회/찾는 방법은 무엇인가요?

저자Kelly수정 날짜

Excel 을 일상적으로 사용하다 보면 종종 다른 통합 문서에 저장된 정보를 가져와야 할 필요가 있습니다。 요약 자료를 작성하거나 부서 간 기록을 조정하거나 별도로 관리되는 참조 데이터를 사용하려는 경우든, 다른 통합 문서에서 값을 조회하고 정보를 반환하는 방법을 아는 것은 필수적입니다。 특히 분산된 원본 범위, 대규모 데이터셋 또는 동료와 공유하는 통합 문서를 다룰 때 이 기능은 데이터 일관성을 크게 향상시키고 수동 오류를 줄여줍니다。

이 문서에서는 다른 통합 문서에서 값을 찾거나 검색하여 결과를 활성 Excel 파일에 직접 반환하는 방법을 소개합니다。 일반적인 시나리오를 다루는 세 가지 실용적인 방법을 설명하며, 열려 있거나 닫힌 통합 문서를 참조하는 고전적인 VLOOKUP 함수, 동적 요구사항을 위한 VBA 접근법, 그리고 대체 수식 기법을 포함합니다。 상세한 설명과 시나리오를 통해 귀하의 워크플로에 가장 적합한 방법을 선택할 수 있습니다。


Excel 에서 다른 통합 문서의 데이터 및 반환 값를 Vlookup 하기

Excel 에서 과일 구매 테이블을 준비한다고 가정해 보세요。 이때 다른 워크북에 저장된 최신 과일 가격을 가져와야 합니다。 복사하여 붙여넣는 대신 원본 워크북에서 과일 이름을 조회하고 해당 가격을 자동으로 가져와 실시간 정확성과 업데이트를 보장할 수 있습니다。 아래에서는 VLOOKUP 함수를 사용하여 이 작업을 수행하는 방법을 설명합니다。

샘플 데이터 만들기다른 워크북에서 과일을 수직 조회(vlookup)하기

데이터를 수집하거나 요약하려는 통합 문서와 정보(예: 가격)가 포함된 원본 통합 문서를 모두 여는 것부터 시작합니다。

과일의 가격을 표시할 셀을 선택합니다。 해당 셀에 다음 수식을 입력하고 필요에 따라 세부 정보를 바꿉니다:

=VLOOKUP(B2,[Price.xlsx]Sheet1!$A$1:$B$24,2,FALSE)

수식을 입력한 후Enter키를 누릅니다。 더 많은 행에 이 조회를 적용하려면 셀의 오른쪽 아래 모서리에 있는 채우기 핸들(작은 사각형)을 원하는 만큼 아래로 끌어 셀을 채우기만 하면 됩니다。

다른 워크북에서 수직 조회(vlookup)할 수식 입력하기

수식을 다른 셀로 드래그하여 채우기

설명 및 팁:
(1) 위의 예제 수식에서:

  • B2는 조회할 과일이 포함된 셀입니다。
  • Price.xlsx는 가격 데이터를 포함하는 원본 워크북입니다。 파일 이름과 확장자가 정확한지 확인하세요。
  • Sheet1는 조회 테이블이 포함된 원본 워크북 내의 워크시트입니다。
  • A$1:$B$24는 키(예: 과일 이름)와 값(가격)이 모두 위치한 범위입니다。 데이터 영역이 다르면 범위를 조정하세요。
  • 2는 제한된 범위에서 두 번째 열의 값을 반환함을 의미합니다。
  • FALSE는 정확히 일치하는 항목만을 요구합니다. TRUE 를 사용하면 잘못되거나 근사치 결과가 나올 수 있습니다。
(2) 원본 통합 문서를 닫으면 Excel 은 수식 참조를 업데이트하여 파일 경로을 포함시킵니다(예:=VLOOKUP(B2,『W:\test\[Price.xlsx]Sheet1』!$A$1:$B$24,2,FALSE))。 참조된 파일이 이 위치에 계속 유지되도록 해야 하며, 그렇지 않으면 수식이 오류 또는 #REF!를 반환할 수 있습니다。 원본 통합 문서의 이름을 변경하거나 이동하는 경우 수식 참조를 업데이트해야 할 수도 있습니다。
(3) #N/A 오류가 표시되면 일반적으로 조회 값이 원본 범위에 존재하지 않음을 의미합니다。 철자, 범위을 다시 확인하고 필요한 모든 통합 문서가 사용 가능한지 확인하세요。

 

이 방법을 사용하면 외부 소스에서 최신 가격이나 정보를 통합할 수 있습니다。 참조된 워크북이 열려 있거나 올바른 경로에서 접근 가능한 한, 반환 값은 원본 워크북이 변경될 때마다 자동으로 업데이트됩니다。
장점:대부분의 사용자에게 설정이 간편하며 데이터가 자동으로 업데이트됩니다。
단점:경로나 워크북 이름가 변경되면 수식이 복잡해질 수 있으며, 닫힌 워크북을 참조하는 조회는 대용량 파일의 속도를 저하시키거나 링크 업데이트하라는 메시지를 표시할 수 있습니다。

더 복잡한 검색이 필요하거나 외부 워크북이 닫혀 있을 때도 자주 데이터를 참조해야 한다면 아래의 VBA 방법이나 대체 수식을 고려하세요。

노트 리본수식이 너무 복잡해서 기억하기 어렵나요? 수식을 자동 텍스트 항목으로 저장해 두면 향후 한 번의 클릭으로 쉽게 재사용할 수 있습니다!
자세히 알아보기…     무료 체험
kutools for excel AI의 스크린샷

KUTOOLS AI 와 함께 엑셀의 마법을 경험하세요

  • 스마트 실행: 간단한 명령어로 셀 작업을 수행하고, 데이터를 분석하며, 차트를 생성하세요。
  • 사용자 지정 수식: 워크플로우를 간소화할 맞춤형 수식을 생성하세요。
  • VBA 코딩: VBA 코드를 손쉽게 작성하고 적용하세요。
  • 수식 해석: 복잡한 수식도 쉽게 이해하세요。
  • 텍스트 번역: 스프레드시트 내에서 언어 장벽을 허물어 보세요。
AI 기반 도구로 엑셀 기능을 한층 강화하세요。지금 다운로드하고 지금까지 느껴보지 못한 효율성을 경험하세요!

VBA 를 사용하여 다른 닫힌 통합 문서에서 데이터 및 반환 값를 Vlookup 하기

VLOOKUP 을 사용하여 조회 참조를 구성하는 것은 특히 원본 파일의 경로, 이름 또는 워크시트를 자주 변경하는 경우 혼란스러울 수 있습니다. 이러한 상황에서는 VBA 를 사용해 조회 프로세스를 자동화하는 것이 더 효율적인 해결책이 될 수 있습니다。 이를 통해 원본 워크북이 닫혀 있어도 값을 조회하고 범위 선택 및 데이터 반환을 자동화할 수 있습니다。

VBA 를 사용하여 워크북 간 조회를 수행하려면 다음 단계를 따르세요:

1.Alt+F11을 동시에 눌러Microsoft Visual Basic for Applications편집기 창을 엽니다。

2.VBA 편집기에서삽입>모듈을 클릭한 후 다음 코드를 모듈 창에 복사하여 붙여넣습니다:

VBA: 다른 닫힌 워크북에서 Vlookup 데이터 및 반환 값 가져오기

Option Explicit

' Convert column number to column letter
Private Function GetColumn(ByVal Num As Integer) As String
    If Num <= 26 Then
        GetColumn = Chr(Num + 64)
    Else
        GetColumn = Chr((Num - 1) \ 26 + 64) & _
                    Chr((Num - 1) Mod 26 + 65)
    End If
End Function

Sub FindValue()

    Dim xAddress As String
    Dim xString As String
    Dim xFileName As Variant
    Dim xUserRange As Range
    Dim xRg As Range
    Dim xFCell As Range
    Dim xSourceSh As Worksheet
    Dim xSourceWb As Workbook
    
    On Error Resume Next
    
    ' Get current selection address
    xAddress = Application.ActiveWindow.RangeSelection.Address
    
    ' Ask user to select lookup range
    Set xUserRange = Application.InputBox( _
        Prompt:="Lookup values :", _
        Title:="Kutools for Excel", _
        Default:=xAddress, _
        Type:=8)
    
    If Err.Number <> 0 Then Exit Sub
    On Error GoTo 0
    
    ' Limit selection to used range
    Set xUserRange = Application.Intersect(xUserRange, _
                                           Application.ActiveSheet.UsedRange)
    
    ' Ask user to select source workbook
    xFileName = Application.GetOpenFilename( _
                "Excel Files (*.xlsx), *.xlsx", _
                1, _
                "Select a Workbook")
                
    If xFileName = False Then Exit Sub
    
    Application.ScreenUpdating = False
    
    ' Open source workbook
    Set xSourceWb = Workbooks.Open(xFileName)
    Set xSourceSh = xSourceWb.Worksheets.Item(1)
    
    ' Build external reference string
    xString = "='" & xSourceWb.Path & Application.PathSeparator & _
              "[" & xSourceWb.Name & "]" & _
              xSourceSh.Name & "'!$"
    
    ' Loop through user range
    For Each xRg In xUserRange
    
        ' Find matching value in source sheet
        Set xFCell = xSourceSh.Cells.Find( _
                        What:=xRg.Value, _
                        LookIn:=xlValues, _
                        LookAt:=xlWhole, _
                        MatchCase:=False)
        
        ' If found, write formula 2 columns to the right
        If Not xFCell Is Nothing Then
            xRg.Offset(0, 2).Formula = _
                xString & _
                GetColumn(xFCell.Column + 1) & _
                "$" & xFCell.Row
        End If
        
    Next xRg
    
    ' Close source workbook without saving
    xSourceWb.Close False
    
    Application.ScreenUpdating = True

End Sub

중요한 세부 사항:

  • 이 코드는 조회 범위에서 오른쪽으로 2 열 떨어진 열에 일치하는 값을 반환합니다. 예를 들어, B 열을 선택하면 결과는 D 열에 나타납니다。
  • 결과를 다른 열에 표시하려면 다음 코드에서 숫자2xRg.Offset(0,2).Formula다른 값(예:1다음 열의 경우,3오른쪽 세 번째 열의 경우)으로 변경하세요。
  • 메시지가 표시되면 올바른 워크북과 워크시트를 선택하세요。 이 코드는 항상 선택한 파일의 첫 번째 워크시트를 사용합니다。 원본 시트가 첫 번째가 아니라면 코드를 수정하세요。
  • 익숙하지 않은 매크로를 실행하기 전에는 항상 파일을 저장하세요。 매크로는 실행 후 취소할 수 없습니다。

3.F5키를 누르거나실행버튼을 클릭하여 매크로를 실행합니다。 「Kutools for Excel」이라는 제목의 대화 상자가 나타나 조회할 셀 범위를 선택하라는 메시지를 표시합니다。

조회할 데이터 범위 지정하기

4.범위를 선택한 후확인을 클릭합니다。 잠시 후 또 다른 대화 상자가 나타나 원본 워크북(닫혀 있어도 가능)을 선택하라는 메시지를 표시합니다。 해당 파일을 찾아 선택한 후열기를 클릭하여 확인합니다。

값을 조회할 워크북 선택하기

매크로가 완료되면 원본 워크북의 해당 값이 현재 워크시트의 대상 열로 반환됩니다。 일부 값이 누락된 경우, 현재 워크시트의 검색 값 범위이 원본 데이터의 항목과 정확히 일치하는지 확인하세요(대소문자 및 앞뒤 뒤쪽의 공백이 정확히 일치해야 합니다)。

해당 값들이 닫힌 워크북에서 반환됨

장점:닫힌 워크북을 처리하고 수식 내 하드코딩된 파일 경로을 피하며 소스 파일을 실시간으로 유연하게 선택할 수 있습니다。
고려 사항:매크로를 사용하려면 매크로가 활성화되어 있어야 하며, 보호된 시트나 비-Excel 파일에서는 VBA 가 작동하지 않을 수 있습니다。 이 방법을 자주 사용할 계획이라면 매크로 지원(*。xlsm) 형식으로 워크북을 저장하세요。

오류가 발생하면 시트나 파일 이름에 오타가 없는지, 범위 선택이 적절한지, 파일 경로가 접근 가능한지 확인하세요。 디버깅을 위해 VBA 편집기를 사용하여 코드를 한 줄씩 단계별로 실행해 보는 것도 좋습니다。


워크북 간 조회를 위한 대체 수식 솔루션

클래식한 VLOOKUP 방식과 VBA 외에도 Excel 에서 워크북 간 조회를 수행하는 대체 방법이 있습니다。 데이터 구조가 다른 경우, 매크로보다 수식을 선호하는 경우, 또는 왼쪽 검색이나 다중 조건 등 더 많은 유연성이 필요한 상황에서 이러한 방법이 더 적합할 수 있습니다。

워크북 간 INDEX 및 MATCH 함수 사용

INDEX 와 MATCH 를 조합하면 다른 워크북에서 왼쪽, 오른쪽, 위, 아래 어느 방향으로든 값을 조회할 수 있습니다. 이는 조회 열의 오른쪽에 반환할 열이 없을 때(즉, VLOOKUP 의 제한사항인 경우) 특히 유용합니다。

시나리오:과일 이름이 첫 번째 열이 아닐 수도 있는 다른 열린 워크북에서 가격을 조회하려고 한다고 가정합니다。

1.대상 워크북에서 결과를 표시할 셀(예: C2)을 선택하고 아래 수식을 입력하세요(워크북, 시트, 범위는 필요에 따라 변경):

=INDEX([Price.xlsx]Sheet1!$B$1:$B$24, MATCH(B2, [Price.xlsx]Sheet1!$A$1:$A$24,0))

2.Enter를 누른 후 채우기 핸들을 드래그하여 필요에 따라 다른 행으로 수식을 복사하거나 채우세요。

매개변수 설명:

  • [Price.xlsx]Sheet1!$B$1:$B$24: 가격이 저장된 범위입니다。
  • B2: 조회할 과일 이름입니다。
  • [Price.xlsx]Sheet1!$A$1:$A$24: 조회 값을 검색할 범위입니다。
  • 맨 끝의0는 정확히 일치함을 보장합니다。
원본 통합 문서가 닫혀 있으면 Excel 은 수식의 파일 경로를 업데이트합니다. VLOOKUP 과 마찬가지로 경로가 유효하게 유지되도록 주의하세요。

강점:왼쪽 또는 오른쪽 조회가 가능하며 더 유연한 레이아웃을 지원합니다。
팁:소스 파일을 이동하거나 이름을 변경할 경우 수식을 반드시 업데이트하세요。

워크북 간 조회를 위한 XLOOKUP 사용(Excel 365 이상)

Excel 365 또는 Excel 2021 을 사용하는 경우 새롭게 도입된 XLOOKUP 함수가 더욱 유연합니다。 정확히 일치하는 항목을 쉽게 찾고 왼쪽 조회를 지원하며 조회 실패 시 오류 없이 자동으로 미리 지정한 값을 표시할 수 있습니다。

사용 방법:
결과를 표시할 셀에 다음을 입력하세요:

=XLOOKUP(B2, [Price.xlsx]Sheet1!$A$1:$A$24, [Price.xlsx]Sheet1!$B$1:$B$24, "Not found")

Enter를 누르고 필요에 따라 수식을 복사하세요。 여기서 「Not found」는 조회 실패 시 표시할 사용자 지정 텍스트로 변경할 수 있습니다。

장점:VLOOKUP 보다 유연하고 관리가 쉬우며 기존 수식에서 발생하는 일반적인 오류를 많이 방지합니다. 다만 XLOOKUP 은 최신 Excel 버전에서만 사용 가능합니다。

다중 조건 매칭, 병합된 시트에서 검색, 대용량 파일의 성능 문제 회피 등 복잡한 요구사항이 있는 경우 구조화된 테이블로 원본 데이터을 구성하거나 Excel 의 Power Query 도구를 사용하여 여러 워크북 간에 데이터 연결를 효율적으로 수행하는 것을 고려하세요。

최고의 Office 생산성 도구

🤖KUTOOLS AI 도우미: 다음을 기반으로 데이터 분석 혁신하기:지능형 실행   |  코드 생성|  사용자 지정 수식 생성  |  데이터 분석 및 차트 생성|  향상된 함수 호출
인기 기능:찾기, 강조 표시 또는 중복 표시   |  빈 행 삭제   |  데이터 손실 없이 열 결합 또는 셀 제거   |  공식을 사용하지 않는 반올림...
슈퍼 LOOKUP:다중 조건 VLookup  |  다중 값 VLookup  |   여러 시트에서 VLookup   |   퍼지 매치....
고급 드롭다운 목록:드롭다운 목록 빠르게 생성   |  종속형 드롭다운 목록   |  다중 선택 드롭다운 목록....
열 관리자:특정 수의 열 추가|열 이동|숨겨진 열의 표시 상태 전환|범위 및 열 비교...
주요 기능:그리드 포커스   |  디자인 보기   |향상된 수식 표시줄   | 워크북 및 시트 관리자   |  자원 라이브러리(자동 텍스트)|  날짜 선택기   |  워크시트 병합  |  암호화/셀 해독   | 목록으로 이메일 보내기   |  슈퍼 필터   |   특수 필터(굵은 글꼴이 있는 셀 필터링/기울임꼴/취소선。。。) 。。。
상위 15 도구 모음:12 텍스트도구(텍스트 추가,특정 문자 삭제, ...)|   50+차트유형(간트 차트, ...)|   40+ 실용적인수식(생일을 기준으로 나이 계산, ...)|   19 삽입도구(QR 코드 삽입,경로에서 그림 삽입, ...)|   12 변환도구(단어로 변환하기,환율 변환, ...)|   7 병합 및 분할도구(고급 행 병합,셀 분할, ...)|그 외 더 많은 기능
Kutools 를 선호하는 언어로 사용하세요 – 영어, 스페인어, 독일어, 프랑스어, 중국어 및 40+개 이상의 언어를 지원합니다!

Kutools for Excel 로 Excel 역량을 한 단계 업그레이드하고 전례 없는 효율성을 경험하세요。Kutools for Excel 는 생산성과 저장 시간을 향상시키는 300 개 이상의 고급 기능을 제공합니다。가장 필요한 기능을 지금 바로 확인하세요。。。


Office Tab 가 Office 에 탭 인터페이스를 제공하여 작업을 훨씬 쉽게 만들어 줍니다

  • Word, Excel, PowerPoint 에서 탭 기반 편집 및 읽기 기능을 활성화합니다, Publisher, Access, Visio 및 Project 에서도 사용 가능합니다。
  • 새 창이 아닌 동일한 창의 새 탭에서 여러 문서를 열고 생성할 수 있습니다。
  • 50% 만큼 생산성을 높이고 매일 수백 번의 마우스 클릭을 줄여줍니다!

모든 Kutools 애드인。 하나의 설치 프로그램

Kutools for Office스위트 번들은 Excel, Word, Outlook 및 PowerPoint 용 애드인과 Office Tab Pro 를 포함하며, 다양한 Office 앱을 사용하는 팀에 이상적입니다。

ExcelWordOutlookTabsPowerPoint
  • 올인원 스위트— Excel, Word, Outlook 및 PowerPoint 애드인 + Office Tab Pro
  • 하나의 설치 프로그램, 하나의 라이선스— 몇 분 안에 설정 완료(MSI 지원)
  • 함께 사용할수록 더 효과적입니다— Office 앱 전반에서 생산성 향상
  • 30 일간 모든 기능 무료 체험— 등록이나 신용카드 필요 없음
  • 최고의 가성비— 개별 애드인 구매 대비 절약