Skip to main content

특정 열의 셀 값에 따라 행을 복제하는 방법은 무엇입니까?

Author: Xiaoyang Last Modified: 2025-08-06

Excel 데이터 테이블로 작업할 때 특정 열의 값을 기준으로 전체 행을 복제해야 할 수 있습니다. 예를 들어, D열에 숫자가 표시된 테이블이 있다고 상상해 보세요. 목표는 각 행을 D열의 해당 셀 값만큼 여러 번 복사하거나 삽입하는 것입니다. 이는 데이터 확장, 테스트용 데이터 세트 준비, 재고 시뮬레이션 또는 반복 주문 라인 생성에 유용할 수 있습니다. 수작업으로 반복하지 않고 이를 효율적으로 수행하면 데이터 무결성을 유지하고 특히 큰 테이블에서 작업 속도를 크게 높일 수 있습니다.

Screenshot showing data table with numbers in column D before duplicating rows based on values Arrow Screenshot showing data table after duplicating rows based on column D values in Excel

VBA 코드를 사용하여 셀 값에 따라 행을 여러 번 복제하기

손쉬운 도구를 사용하여 지정된 횟수만큼 행을 복사하고 삽입하기 - Kutools for Excel

Power Query 변환을 통해 행 복제하기


VBA 코드를 사용하여 셀 값에 따라 행을 여러 번 복제하기

특정 열(예: D열)의 값에 따라 전체 행의 복제본을 빠르게 생성해야 하는 경우 VBA는 직접적이고 효율적인 솔루션을 제공합니다. 이 접근법은 특히 대규모 데이터 세트를 처리할 때 유용하며, 프로세스를 자동화하고 정확성을 보장하는 데 도움이 됩니다. 그러나 VBA를 사용하려면 Excel 개발자 탭에 대한 기본적인 이해와 매크로 실행 방법에 대한 지식이 필요합니다. 주요 장점은 유연성입니다. 코드를 조정하여 다른 범위나 대상 열에 맞출 수 있습니다. 반면, VBA에 익숙하지 않거나 보안 정책으로 인해 환경에서 매크로가 차단되는 경우 아래의 대체 솔루션을 고려하세요.

1. ALT + F11 키를 눌러 Microsoft Visual Basic for Applications 창을 엽니다.

2. 삽입 > 모듈을 클릭하고 모듈 창에 다음 코드를 붙여넣습니다.

VBA 코드: 셀 값에 따라 행을 여러 번 복제하기:

Sub CopyData()
'Updateby Extendoffice
    Dim xRow As Long
    Dim VInSertNum As Variant
    xRow = 1
    Application.ScreenUpdating = False
    Do While (Cells(xRow, "A") <> "")
        VInSertNum = Cells(xRow, "D")
        If ((VInSertNum > 1) And IsNumeric(VInSertNum)) Then
           Range(Cells(xRow, "A"), Cells(xRow, "D")).Copy
           Range(Cells(xRow + 1, "A"), Cells(xRow + VInSertNum - 1, "D")).Select
           Selection.Insert Shift:=xlDown
           xRow = xRow + VInSertNum - 1
        End If
        xRow = xRow + 1
    Loop
    Application.ScreenUpdating = False
End Sub

3. 그런 다음 F5 키를 눌러 이 코드를 실행합니다. 전체 행은 D열의 셀 값에 따라 여러 번 복제되어 요구 사항에 맞게 처리됩니다.

참고: 위 코드에서 문자 A는 선택한 데이터 범위의 첫 번째 열을 나타내며, D는 복제 횟수에 사용된 열 문자입니다. 필요에 따라 이러한 문자를 수정하여 자신의 워크시트에 맞게 조정하세요. 매크로 실행 전에는 작업 내용을 되돌릴 수 없으므로 통합 문서를 백업하세요. 오류 메시지가 표시되면 선택한 데이터 범위와 대상 열이 일치하는지 확인하세요.

손쉬운 도구를 사용하여 지정된 횟수만큼 행을 복사하고 삽입하기 - Kutools for Excel

코드를 사용하지 않는 방법을 선호하거나 배치 복제를 관리하기 위한 사용자 친화적인 인터페이스를 원한다면 Kutools for Excel은 실용적인 솔루션을 제공합니다. 'Duplicate Rows / Columns Based on Cell Value' 기능을 통해 관련 셀에 지정된 숫자에 따라 빠르게 행을 복사하고 삽입할 수 있습니다. 이는 이러한 반복적인 행 작업을 자주 처리하는 사용자에게 적합하며 더 시각적이고 사용자 정의 가능한 프로세스를 제공합니다. Kutools는 복제 중에 원래 테이블의 레이아웃과 서식을 유지하여 실수로 발생할 수 있는 오류의 위험을 줄입니다. 이 방법은 VBA 경험 여부에 관계없이 매끄럽게 작동하며 중대형 데이터 범위에서 효율성을 크게 향상시킵니다.

Kutools for Excel은 300개 이상의 고급 기능을 제공하여 복잡한 작업을 간소화하고 창의성과 효율성을 향상시킵니다. AI 기능과 통합되어 Kutools는 정확하게 작업을 자동화하며, 데이터 관리를 손쉽게 만듭니다. Kutools for Excel의 상세 정보...무료 체험하기...
  1. Kutools > 삽입 > Duplicate Rows/Columns Based on Cell Value를 클릭하여 이 기능을 활성화합니다.
  2. 그런 다음 'Copy and insert rows' 옵션을 선택하고 대화 상자에서 삽입 범위반복 횟수를 따로 지정합니다. 선택 사항을 확인하고 확인을 클릭하세요.

Screenshot of Kutools for Excel Duplicate Rows/Columns feature dialog box


Power Query 변환을 통해 행 복제하기

Power Query는 열 값에 따라 행을 복제하기 위한 강력하고 반복 가능한 솔루션을 제공합니다. 이는 큰 테이블이나 데이터를 자주 새로 고쳐야 할 때 이상적입니다. 이 도구를 사용하면 수식이나 코드 없이 숫자 지표에 따라 행을 확장할 수 있습니다. 이 방법은 시각적으로 설명 가능하며 단계별 과정을 원하고 미래의 데이터 업데이트에서 반복성이 필요한 사용자에게 적합합니다.

1. 데이터를 Excel 테이블에 추가합니다 (범위 선택 후 Ctrl+T를 누릅니다). 데이터 > 테이블/범위에서 가져오기를 선택하여 테이블을 Power Query로 로드합니다.

2. Power Query 편집기에서 열 추가 탭을 선택하고 사용자 정의 열을 클릭합니다.

3. 다음 수식을 입력하여 D열의 값에 따라 각 행에 대해 리스트를 생성합니다. ( 참고: [D]를 실제 열 제목으로 바꿔야 합니다. 예를 들어, 여기서는 Duplicate Times를 선택하고 삽입 버튼을 클릭하여 [D] 인수를 교체합니다.)

List.Repeat({1}, [D])

set options in the Power Query Editor

4. 새 사용자 정의 열 옆의 확장 버튼을 클릭하고 새 행으로 확장을 클릭합니다.

Click the Expand button

5. 그러면 D열의 값에 따라 데이터가 복제된 것을 스크린샷에서 확인할 수 있습니다.

the data has been duplicated based on the values

6. 필요한 경우 도우미 열을 제거하고 닫기 및 로드를 클릭하여 데이터를 Excel로 반환합니다.

: 소스 데이터가 변경될 때마다 Power Query 출력을 간단히 새로 고쳐 반복된 행을 자동으로 업데이트할 수 있습니다. 이를 통해 지속적이거나 자동화된 데이터 처리의 효율성과 정확성을 보장합니다. Power Query는 Excel 2016 이상 버전에 내장되어 있으며 이전 버전에서는 무료 추가 기능으로 사용할 수 있습니다. Excel 버전에 Power Query가 없거나 쿼리를 생성할 수 없는 경우 위에서 언급한 수식 또는 VBA 솔루션을 고려하세요.

최고의 오피스 생산성 도구

🤖 Kutools AI Aide: 지능형 실행을 기반으로 데이터 분석 혁신 지능형 실행   |  코드 생성  |  사용자 정의 수식 생성  |  데이터 분석 및 차트 생성  |  Kutools Functions 호출
인기 기능: 중복 찾기, 강조 또는 중복 표시  |  빈 행 삭제  |  데이터 손실 없이 열 또는 셀 병합  |  반올림...
슈퍼 LOOKUP: 다중 조건 VLookup    다중 값 VLookup  |   다중 시트 조회   |   퍼지 매치 ....
고급 드롭다운 목록: 드롭다운 목록 신속 생성  |  의존형 드롭다운 목록  |  다중 선택 드롭다운 목록....
열 매니저: 지정 개수 열 추가  |  열 이동  |  숨겨진 열 표시 상태 전환 |  범위 및 열 비교 ...
주요 기능: 그리드 포커스  |  디자인 보기  |  향상된 수식 표시줄   통합 문서 & 시트 관리   |  자동 텍스트 라이브러리   |  날짜 선택기   |  데이터 병합   |  셀 암호화/해독   목록별 이메일 보내기  |  슈퍼 필터  |  특수 필터 (굵게/이탤릭/취소선 필터...)...
Top15 도구 세트12개 텍스트 도구(텍스트 추가, 특정 문자 삭제, ...)  |  50+ 차트 유형(간트 차트, ...)  |  40+ 실용 수식(생일을 기반으로 나이 계산, ...)  |  19개 삽입 도구(QR 코드 삽입, 경로에서 그림 삽입, ...)  |  12개 변환 도구(단어로 변환하기, 통화 변환, ...)  |  7개 병합 & 분할 도구(고급 행 병합, 셀 분할, ...)  |  ... 그리고 그 외
Kutools를 원하는 언어로 사용하세요 – 영어, 스페인어, 독일어, 프랑스어, 중국어 등40가지 이상의 언어를 지원합니다!

Kutools for Excel로 Excel 실력을 한 단계 업그레이드하고, 그 어떤 때보다 뛰어난 효율성을 경험하세요. Kutools for Excel은300개 이상의 고급 기능을 제공하여 생산성을 높이고 저장 시간을 줄여줍니다. 가장 필요한 기능을 지금 바로 확인하세요...


Office Tab이 오피스에 탭 인터페이스를 제공하여 작업을 훨씬 쉽게 만듭니다

  • Word, Excel, PowerPoint에서 탭 기반 편집과 읽기를 활성화합니다.
  • 여러 문서를 새 창이 아닌 동일한 창의 새 탭에서 열고 생성하세요.
  • 생산성이50% 향상되며, 매일 수백 번의 마우스 클릭을 줄일 수 있습니다!