반응형
매크로 설명
- 첫 번째 시트 "A"열의 빈셀 또는 빈셀이 있는 행 전체를 삭제하는 매크로
- 이 방법 외에도 SpecialCells 메서드로 빈행을 찾아서 없앨 수 있다. (방법은 많다.)
- 많은 데이터가 아니거나 손이 많이 가지 않는다면, 자동필터를 이용해서 빈 필드는 제외하고 따로 복사하는 방법을 추천한다.
VBA Code 예시
Option Explicit
Sub empt_row_del()
Dim i As Long
Dim lastRow As Long
Dim targetCol As String
Dim mySheet As Worksheet
Set mySheet = Sheets(1) 'mySheet를 첫 번째 시트로 설정, 다른 시트가 필요하다면 변경
With mySheet.UsedRange
lastRow = .Row + .Rows.Count - 1 '마지막 셀 번호
End With
targetCol = "A" 'A열에 있는 빈행만 검색하도록 설정
For i = lastRow To 1 Step -1 '첫 행부터 시작하면 빈 셀을 삭제할 경우 인덱스가 꼬이기 때문에 마지막 행에서 거꾸로 와야 한다.
If mySheet.Cells(i, targetCol) = "" Then '빈행이면
'If trim(mysheet.Cells(i, targetcol)) = "" Then '셀에 스페이스바로 채워져 있어서 빈칸이지만 빈칸으로 안보이는 경우
mySheet.Cells(i, targetCol).Delete shift:=xlUp '해당 셀 삭제 및 셀을 위쪽으로 밀기
'mySheet.Cells(i, targetCol).EntireRow.Delete shift:=xlUp 셀이 아닌 행 전체 삭제 코드
End If
Next i
MsgBox "COMPLETE"
End Sub
실행 결과
Copyright (2018) Ruahneuma. All Rights Reserved.
반응형
'VBA Macro > VBA Excel' 카테고리의 다른 글
[엑셀] XML 파싱하기 #1 - 웹페이지 소스코드 따오기(기본코드) (0) | 2017.12.02 |
---|---|
[엑셀] 빈행을 동일하게 채우기 매크로 (0) | 2017.11.16 |
[엑셀] XML 파싱하기 #3 - (번외편) 공공데이터(API) 활용 (0) | 2017.11.11 |
[엑셀] XML 파싱하기 #2 - 필요한 데이터만 잘라내기 (split 함수) (0) | 2017.11.11 |
[엑셀] 메모장 데이터 불러오기 매크로 (0) | 2017.11.07 |