반응형
매크로 설명
- 지난 번 포스팅을 약간 수정하여 보다 보편화된 상황에서 사용할 수 있도록 만든 매크로이다.
- (http://ruahneuma.tistory.com/57 "강제 줄바꿈 셀 분리하기")
- 특정 구분자(예, 콤마, 띄어쓰기, 콜론 등)로 나열된 셀 내용을 행을 추가하여 별도로 분리하는 매크로이다.
- targetChr 변수에 원하는 구분자를 입력하여 쉽게 분리할 수 있다.
VBA Code
Sub forced_enter_separation()
Dim k As Integer, cnt As Integer
Dim varSize As Integer
Dim lastRow As Integer
Dim myColumn As String
Dim targetChr As String
With ActiveSheet.UsedRange
lastRow = .Row + .Rows.Count '마지막 셀 번호 + 1
End With
myColumn = "F" '대상 열, 필요시 변경
targetChr = ", " '대상 구분자, 필요시 변경
For k = lastRow To 2 Step -1 '셀 삽입/삭제 코드는 역방향으로 탐색
varSize = UBound(Split(Cells(k - 1, myColumn), targetChr)) '구분자가 있는 셀의 내용을 배열로 반환
If InStr(1, Cells(k - 1, myColumn), targetChr) > 0 Then '구분자가 있는 경우
For cnt = 0 To varSize - 1 '배열 크기의 -1만큼 순환
Cells(k, myColumn).EntireRow.Insert shift:=xlShiftDown '행 삽입
Cells(k, myColumn) = Split(Cells(k - 1, myColumn), targetChr)(varSize - cnt) '배열 내용 할당
Next
Cells(k - 1, myColumn) = Split(Cells(k - 1, myColumn), targetChr)(varSize - cnt) '최초의 셀에 첫번째 내용 할당
End If
Next k
End Sub
매크로 실행 동영상(사용방법 포함)
Copyright (2018) Ruahneuma. All Rights Reserved.
반응형
'VBA Macro > VBA Excel' 카테고리의 다른 글
[엑셀 VBA] 두 단어의 일치도(%) 산출 매크로 #2 (일반화된 방법) (2) | 2020.05.12 |
---|---|
[엑셀 VBA] 셀 내용 보존하면서 셀 병합하기 (2) | 2018.07.28 |
엑셀 VBA 실제 사용 중인 영역의 경계 선택하기 (0) | 2018.03.07 |
[엑셀] 지정한 셀 크기에 맞게 사진 삽입하기 (0) | 2018.03.06 |
[엑셀VBA] 강제 줄바꿈 셀 분리하기 (5) | 2018.03.05 |