본문 바로가기
엑셀

엑셀: 여러 줄로 입력된 데이터를 여러 열로 나누는 방법

by 만취2501 2025. 3. 29.
반응형

엑셀을 사용하다 보면, 한 셀에 여러 줄로 입력된 데이터를 개별 열로 나누어야 하는 경우가 많습니다. 예를 들어, 한 셀에 여러 개의 이름, 주소, 항목 등이 줄바꿈(Alt + Enter)되어 입력된 경우, 이를 각각의 열로 분리하면 데이터 정리와 분석이 훨씬 쉬워집니다.

이번 글에서는 엑셀에서 여러 줄로 입력된 데이터를 여러 열로 나누는 방법 여러 가지 방법으로 소개하겠습니다.


 

1. 엑셀에서 여러 줄 데이터를 여러 열로 나누는 방법

방법 1: "텍스트 나누기" 기능 활용하기

엑셀에는 기본적으로 "텍스트 나누기" 기능이 있어, 한 셀에 입력된 여러 줄 데이터를 쉽게 여러 열로 나눌 수 있습니다.

1.1. 텍스트 나누기 기능을 사용하는 방법

  1. 셀 선택: 여러 줄로 입력된 데이터를 포함하는 셀들을 선택합니다.
  2. 데이터 탭 이동: 상단 메뉴에서 **[데이터] > [텍스트 나누기]**를 클릭합니다.
  3. 구분 기호 선택:
    • ‘구분 기호로 분할’을 선택하고 다음 버튼을 클릭합니다.
  4. 줄 바꿈(Enter) 선택:
    • 구분 기호 옵션에서 기타를 체크한 후, 빈칸에 Ctrl + J를 입력합니다.
    • 이렇게 하면 줄바꿈(Alt + Enter)으로 구분된 데이터를 인식합니다.
  5. 열 분할 확인: 미리 보기에서 데이터가 여러 열로 나뉘었는지 확인합니다.
  6. 완료: "마침"을 누르면 여러 줄로 입력된 데이터가 자동으로 여러 열로 나뉩니다.

 장점: 가장 간단하고 빠르게 데이터를 나눌 수 있는 방법입니다.
 단점: 원본 데이터가 변경되면 다시 실행해야 합니다.


 

2: 함수 사용하여 여러 열로 나누기

"텍스트 나누기" 기능이 아니라 함수를 사용하여 자동으로 데이터를 여러 열로 나누는 방법도 있습니다.

2.1. TEXTSPLIT 함수 사용 (엑셀 365/2021 이상 가능)

TEXTSPLIT 함수는 특정 구분자를 기준으로 데이터를 자동으로 나누어줍니다.
엑셀 365 또는 2021 버전 이상에서 사용할 수 있으며, 줄바꿈을 기준으로 데이터를 나누려면 다음과 같이 사용하면 됩니다.

=TEXTSPLIT(A2, CHAR(10))

설명:

  • A2: 여러 줄로 입력된 데이터가 있는 셀
  • CHAR(10): 줄바꿈(Alt + Enter)을 의미하는 코드

이 함수를 사용하면 데이터가 자동으로 여러 열로 나뉘어 정렬됩니다.

 장점: 실시간으로 데이터를 자동 정리 가능
 단점: Excel 365 및 2021 이상에서만 지원됨


 

3: Power Query를 이용한 데이터 변환

Power Query를 사용하면, 데이터를 분할하여 더 정교하게 변환할 수 있습니다.

3.1. Power Query를 활용한 데이터 분할 방법

  1. 셀 범위 선택: 여러 줄 데이터가 포함된 셀을 선택합니다.
  2. [데이터] > [데이터 가져오기] > [테이블 또는 범위에서] 선택
  3. Power Query 편집기에서 데이터 변환
    • 선택한 열을 마우스 오른쪽 버튼 클릭 후 열 분할 > 구분 기호 기준 분할
    • 구분 기호 줄 바꿈(Enter) 선택
  4. 변환된 데이터 엑셀로 내보내기
    • [닫기 및 로드] 버튼을 클릭하여 엑셀로 반영

 장점: 대량의 데이터를 정리할 때 유용함
 단점: 초보자가 사용하기에는 다소 복잡할 수 있음


4. VBA를 활용한 자동 변환 방법

VBA(Visual Basic for Applications)를 활용하면, 매번 수작업을 하지 않아도 자동으로 데이터를 여러 열로 나누는 기능을 구현할 수 있습니다.

4.1. VBA 코드 작성하기

  1. Alt + F11을 눌러 VBA 편집기를 엽니다.
  2. 삽입 > 모듈을 선택합니다.
  3. 아래 코드를 입력한 후 실행합니다.
Sub SplitTextToColumns()
    Dim rng As Range
    Dim cell As Range
    Dim i As Integer
    Dim splitData As Variant

    ' 여러 줄 데이터가 있는 범위 선택
    Set rng = Selection
    
    For Each cell In rng
        splitData = Split(cell.Value, vbLf) ' 줄바꿈(Alt + Enter) 기준으로 나눔
        For i = LBound(splitData) To UBound(splitData)
            cell.Offset(0, i).Value = splitData(i) ' 분할된 데이터를 여러 열에 배치
        Next i
    Next cell
End Sub

4.2. VBA 실행 방법

  1. 엑셀에서 여러 줄 데이터가 있는 범위를 선택합니다.
  2. VBA 창에서 위 코드를 실행합니다.
  3. 선택한 셀들이 자동으로 여러 열로 나뉘어 정리됩니다.

 장점: 대량 데이터 처리가 가능하며 자동화 가능
 단점: VBA 코드 사용이 어려울 수 있음


5. 최적의 방법 선택하기

방법사용 용도장점단점

텍스트 나누기 기능 기본적인 데이터 분할 쉽고 빠름 원본 변경 시 다시 실행해야 함
TEXTSPLIT 함수 실시간 데이터 변환 자동 업데이트 가능 Excel 365/2021 이상 필요
Power Query 복잡한 데이터 분할 강력한 변환 기능 초보자가 익히기 어려울 수 있음
VBA 코드 활용 대량 데이터 자동화 반복 작업 자동화 VBA 작성이 어려울 수 있음

✅ 가장 간단한 방법을 원한다면?  텍스트 나누기 기능
✅ 실시간으로 데이터 변환이 필요하다면?  TEXTSPLIT 함수
✅ 대량 데이터를 한 번에 변환하려면?  Power Query
✅ 자동화를 원한다면?  VBA 코드 활용


6. 결론

엑셀에서 한 셀에 여러 줄로 입력된 데이터를 여러 열로 나누는 방법은 다양하며, 사용자의 필요에 따라 최적의 방법을 선택할 수 있습니다.

  • 간단한 작업이라면 텍스트 나누기 기능을,
  • 지속적으로 데이터가 변경되는 경우 TEXTSPLIT 함수를,
  • 대량의 데이터를 정리해야 한다면 Power Query 또는 VBA 코드를 활용하는 것이 좋습니다.

위 방법을 적절히 활용하여 엑셀 데이터를 더욱 효과적으로 정리하고 분석해 보세요! 🚀

반응형