CSV(쉼표로 구분된 값) 파일은 사용자가 데이터를 저장할 때 가장 많이 활용하는 기본적인 데이터 파일 형식입니다. 많은 사용자가 이러한 CSV 파일을 엑셀의 기존 시트로 가져와서 작업하는데요. CSV 파일을 가져오거나 여는 것은 열기, 텍스트/CSV에서(데이터 탭), 데이터 가져오기(데이터 탭), 레거시 마법사(데이터 탭), 그리고 VBA 매크로 등 엑셀의 다양한 기능으로 손쉽게 처리할 수 있습니다.
예를 들어, 아래 이미지처럼 메모장(텍스트나 CSV 파일을 생성·열람·편집할 수 있는 기본 프로그램)에서 열었을 때 다음과 같이 보이는 CSV 파일이 있다고 가정해 보겠습니다. 어떤 이유에서든 이 CSV 파일을 엑셀 워크시트로 가져와야 하는 상황이 생길 수 있습니다.

이 글에서는 엑셀의 다양한 기능과 VBA 매크로를 활용해 CSV 파일을 기존 시트로 가져오는 방법을 소개합니다.
실습 파일 다운로드
가져오기 실습에 사용되는 CSV 파일입니다.
각 방법의 실행 결과가 담긴 엑셀 연습 파일입니다.
엑셀에서 CSV를 기존 시트로 가져오는 5가지 쉬운 방법
먼저 한 가지 짚고 넘어갈 점이 있습니다. 연결 프로그램 > Excel을 통해 CSV 파일을 열면 엑셀에서 파일이 열리지만, 단순히 여는 것만으로는 CSV 파일이 xlsx 형식으로 변환되지 않습니다.
🔄 CSV 파일의 내용을 확인하고 싶다면, 해당 파일을 마우스 오른쪽 버튼으로 클릭하고 연결 프로그램(옵션 목록에서 선택) > 메모장을 클릭하면 됩니다.

🔄 메모장 창이 열리고 아래 이미지처럼 CSV 파일의 내용이 표시됩니다.

그럼 이제 CSV 파일을 기존 엑셀 워크시트로 가져오는 방법을 하나씩 살펴보겠습니다.
방법 1: 폴더 경로에서 파일을 찾아 가져오기(열기 메뉴)
엑셀은 파일 > 열기 메뉴를 제공합니다. 이 열기 기능을 활용하면 CSV 파일을 간편하게 가져올 수 있습니다.
1단계: 기존 엑셀 파일이나 빈 워크시트를 연 뒤, 파일 > 열기 > 찾아보기로 이동합니다.

2단계: 파일 형식을 텍스트 파일(파일 이름 입력란 오른쪽)로 변경합니다. 그런 다음 디렉터리를 탐색하여 해당 CSV 파일을 선택하고 열기를 클릭합니다.

3단계: 잠시 후 엑셀이 CSV 파일을 기존 워크시트로 가져옵니다. 데이터를 다듬으면 아래 사진과 같은 결과를 얻을 수 있습니다.

함께 읽으면 좋은 글: CSV를 XLSX로 변환하는 방법(4가지 빠른 방법)
방법 2: 텍스트/CSV에서 기능으로 가져오기
앞서 언급했듯이 엑셀은 다양한 파일 형식을 가져올 수 있는 여러 기능을 제공합니다. 데이터 탭의 데이터 가져오기 및 변환 섹션에는 텍스트/CSV에서 기능이 있습니다.
1단계: 데이터 탭으로 이동한 뒤(데이터 가져오기 및 변환 섹션) 텍스트/CSV에서를 선택합니다.

2단계: 파일 디렉터리를 탐색하여 필요한 CSV 파일을 선택합니다. 텍스트 또는 CSV 파일만 가져오도록 설정되어 있어 엑셀이 자동으로 해당 형식의 파일만 표시해 줍니다. 가져오기를 클릭합니다.

3단계: CSV 데이터 미리 보기가 나타납니다. 엑셀이 구분 기호를 자동으로 인식하는 것을 확인할 수 있습니다. 로드 > 로드 위치를 클릭합니다.
데이터 가져오기 기능(이 경우 레거시 마법사 제외)을 사용해 CSV 파일을 가져올 때마다 엑셀은 로드될 데이터의 미리 보기를 표시합니다.
4단계: 로드 위치 옵션을 누르면 데이터 가져오기 대화 상자가 열립니다. 이 대화 상자에서 가져온 데이터를 배치할 위치를 지정할 수 있습니다. 기존 워크시트 옵션을 선택한 후 확인을 클릭합니다.

🔄 이후 엑셀이 잠시 동안 CSV 데이터를 기존 워크시트로 불러옵니다. 아래 이미지를 참고하세요.

로드된 데이터는 자유롭게 수정할 수 있습니다. 데이터 가져오기 대화 상자에서는 다양한 보기 옵션(즉, 테이블, 피벗 테이블 보고서, 피벗 테이블)을 제공하므로, 원하는 옵션을 골라 데이터를 원하는 형태로 구성할 수 있습니다.
함께 읽으면 좋은 글: 열지 않고 VBA로 CSV 파일 가져오기(3가지 실용적인 예제)
방법 3: 데이터 가져오기 기능으로 가져오기
데이터 가져오기 기능 안에도 텍스트/CSV에서 옵션이 포함되어 있습니다. 방법 2의 단계를 반복하면 CSV 파일을 가져올 수 있습니다.
1단계: 데이터 탭으로 이동한 뒤 데이터 가져오기 > 파일에서 > 텍스트/CSV에서를 클릭합니다.

2단계: 디바이스 디렉터리로 이동합니다. 해당 파일을 선택한 후 가져오기를 클릭합니다.

3단계: 방법 2의 3~4단계를 반복해 기존 엑셀 워크시트에 데이터를 로드합니다. 필요에 따라 데이터를 수정하면 됩니다.

관련 추천 글
- 파일을 열지 않고 CSV를 XLSX로 변환하는 방법(5가지 쉬운 방법)
- 엑셀 VBA: 텍스트 파일을 문자열로 읽기(4가지 효과적인 사례)
- 메모장·텍스트 파일을 엑셀에서 열별로 여는 방법(3가지 쉬운 방법)
- 엑셀에서 열 구분된 CSV 파일 열기(3가지 쉬운 방법)
방법 4: 레거시 마법사로 기존 시트에 가져오기
엑셀은 옵션 > 데이터에서 레거시 마법사 옵션을 제공합니다. 텍스트에서(레거시) 옵션을 활성화하면 데이터 가져오기 기능에 레거시 마법사 항목이 추가됩니다.
1단계: 기존 엑셀 워크시트에서 파일 > 옵션을 클릭합니다.

2단계: Excel 옵션 창이 열립니다. 창에서 데이터를 선택한 뒤(레거시 데이터 가져오기 마법사 표시 항목) 텍스트에서(레거시)에 체크하고 확인을 클릭합니다.

3단계: 이제 데이터 > 데이터 가져오기 > 이전에는 없던 레거시 마법사 옵션을 선택한 뒤 텍스트에서(레거시)를 클릭합니다.

4단계: 디렉터리에서 원하는 CSV 파일을 가져옵니다.

5단계: 아래 이미지처럼 텍스트 마법사(1/3단계) 화면이 표시됩니다.
🔼 원본 데이터 형식을 선택하세요 항목에서 구분 기호로 분리됨을 체크합니다.
🔼 (데이터에 헤더나 항목명이 있는 경우) 첫 번째 행은 데이터 행이 아님을 체크합니다.
🔼 다음을 클릭합니다.

6단계: 텍스트 마법사 2/3단계에서 구분 기호로 쉼표를 체크합니다. 다음을 클릭합니다.

7단계: 텍스트 마법사 3/3단계에서 열 데이터 서식을 일반으로 선택합니다. 마침을 클릭합니다.

8단계: 엑셀이 데이터 가져오기 대화 상자를 띄웁니다. 데이터를 배치할 위치로 기존 워크시트를 선택하고 확인을 클릭합니다.

9단계: 잠시 후 엑셀이 데이터를 로드합니다. 필요에 따라 데이터를 수정하면 됩니다. 결과는 아래 사진과 같습니다.

함께 읽으면 좋은 글: 텍스트 파일을 엑셀로 자동 가져오기(2가지 실용적인 방법)
방법 5: VBA 매크로로 기존 시트에 가져오기
VBA 매크로 역시 디바이스 폴더에서 CSV 파일을 가져올 수 있습니다. Application.GetOpenFilename 문을 활용한 몇 줄의 매크로 코드만으로 엑셀이 디바이스 디렉터리에서 CSV 파일을 선택·가져오도록 지시할 수 있습니다.
1단계: ALT+F11을 누르거나 개발 도구 탭 > Visual Basic(코드 섹션)으로 이동해 Microsoft Visual Basic 창을 엽니다. Visual Basic 창에서 삽입 > 모듈을 클릭합니다.

2단계: 모듈에 아래 매크로를 붙여넣습니다.
Sub ImportCSVFile()
Dim wrkSheet As Worksheet, mrfFile As String
Set wrkSheet = ActiveWorkbook.Sheets("VBA")
mrfFile = Application.GetOpenFilename("Text Files (*.csv),*.csv", , "Provide Text or CSV File:")
With wrkSheet.QueryTables.Add(Connection:="TEXT;" & mrfFile, Destination:=wrkSheet.Range("B2"))
.TextFileParseType = xlDelimited
.TextFileCommaDelimiter = True
.Refresh
End With
End Sub

이 매크로에서 Application.GetOpenFilename 문은 디바이스 디렉터리를 열어 CSV 파일을 선택할 수 있게 해줍니다. 매크로는 연결 유형을 텍스트로 설정하고 데이터 대상을 B2 셀로 지정합니다. 또한 파일 형식을 True로 선언해 쉼표로 구분된 파일을 로드하도록 지시합니다.
🔄 CSV 파일이 지정된 워크시트(예: VBA)에 로드됩니다. 매크로는 쉼표를 구분 기호로 사용해 데이터를 열별로 분배합니다.

함께 읽으면 좋은 글: 엑셀 VBA로 쉼표 구분 텍스트 파일 가져오기(2가지 사례)
결론
이번 글에서는 열기, 텍스트/CSV에서(데이터 탭), 데이터 가져오기(데이터 탭), 레거시 마법사(데이터 탭) 기능과 더불어 VBA 매크로까지 활용해 엑셀에서 CSV 파일을 기존 시트로 가져오는 방법을 살펴봤습니다. 위에서 소개한 방법들이 여러분의 업무에 도움이 되기를 바랍니다. 추가 문의 사항이나 덧붙일 내용이 있다면 댓글로 남겨 주세요.
관련 글
- VBA로 텍스트 파일을 엑셀로 가져오는 방법(3가지 쉬운 방법)
- 엑셀 VBA로 CSV 파일 한 줄씩 읽기(3가지 모범 예제)
- CSV 파일을 엑셀에서 열 구분으로 자동 여는 방법(3가지 방법)
- 엑셀 VBA로 CSV 파일을 XLSX로 변환하기(2가지 쉬운 예제)