[엑셀 VBA] 빈 열(또는 행) 삭제하기

2019. 12. 29. 23:53업무 스킬/Excel VBA

728x90

 

위와 같이 빈 셀이 중간중간 있는 DATA의 경우

빈 셀이 있는 열만 골라서 삭제 해주어

자동 정리 되는 매크로를 만들어보자

 

만들기 전에 알아야될 기본 코드를 먼저 설명하면

 

1) Activesheet.Usedrange @현재 Sheet의 모든 Data 범위

2) 범위.Columns.Count @선택된 Data 범위의 열 개수

3) Columns([숫자]). Entirecolumn @[숫자] 번째 열 전부 

 

위 3개의 코드에 Excel에서 쓰이는 [CountA] 함수를 써서

빈 셀이 있는 열을 골라서 삭제해줄 거다 

 

코드를 오래 짜 본 사람들은 대충 감이 올 거다

방식은

1. 범위를 정하고

2. 범위를 순서대로 훑는다.

3. IF문을 써서 빈셀을 찾아낸다.

 

 

빈칸을 찾아내는 코드는 IsEmpty도 있지만

VBA 특성상 Excel의 기본 코드를 쓰면

속도가 더 빠르다.

그렇기 때문에 WorksheetFunction을 사용해

빈셀의 개수를 나타내 주는 CountA 함수를 사용하는 게

속도 측면에서 더 유리하다.

위 코드를 사용하면 결과물을

 

깔끔하게 얻을 수 있다!

728x90