본문 바로가기
지난 게시글

[엑셀] VBA 데이터 있는 열만 선택하기, Columns("A").SpecialCells(2)

by yyDandy 2024. 1. 7.
반응형

안녕하세요. yyDandy입니다. 사무실 칼퇴보장 알잘딱깔센 엑셀 활용법! 

 


Columns("A").SpecialCells(2) 개요

오늘은 VBA 데이터 있는 셀만 선택하는 기능에 대해 알려드릴게요. VBA를 사용하다보면 생각보다 필요한 기능이 많은데요. 그 중 하나는 데이터 셀을 선택하는 기능이라고 생각해요. 예를 들어, A열에 있는 데이터에서 업데이트가 필요한 경우에 사용할 수 있겠죠? 하지만 이렇게 생각할 수 있어요. Ctrl + Shift + 방향키를 통해 선택하면 되지 않나? 하지만, 아래 사진처럼 6셀이 끊어져있다면 기능이 작동할 수 없죠. 여기서 아래를 더 누르면 데이터가 없는 6칸까지 클릭이 되는 상황이 있어서 생각을 더 해야 된답니다.

 

이때 사용하는 기능이 Columns("A").SpecialCells(2)라는 기능입니다. 먼저 하나씩 뜯어서 살펴볼게요. Columns는 열을 의미해요. 뒤에 A는 당연히 A열이겠죠? 여기서 B나 C를 넣으면 B열 C열을 사용할 수 있어요. 엑셀 함수에서는 Index에서 Columns에 넣는 인수랑 똑같은 의미를 두고 있습니다. 다음으로 SpecialCells인데요. 이 말은 그대로 특정한 셀을 의미해요. 그러면 다음으로 생각해야 하는 부분은 특별함은 어떻게 구분할 것인가? 인데 그게 바로 (2)라는 의미가 있겠죠. (2) = xlCellTypeConstants라는 의미인데요. 이것은 공백을 제외한 숫자와 문자를 모두 선택한다는 의미를 두고 있어요.

 

 

위처럼 Columns("B").SpecialCells(2).Select을 해보면 B열의 6칸을 제외하고 다 클릭된다는 것을 볼 수 있어요. 특정범위를 선택하고 싶다면, Columns를 바꿔주면 돼요. 범위지정은 range("A1:G10")처럼 표현을 하게 된다면 해당 범위에서 빈칸을 제외하고 클릭할 수 있답니다. 

반응형

Columns("A").SpecialCells(2) 심화

SpecialCell에서 (2)가 빈칸을 제외한 모든 문자, 숫자를 선택하는 것이라면 다른 기능은 또 뭐가 있을까요? 

 

 

이렇게 많은 기능이 있는데요. SpeciaCells로는 (2,1)은 숫자, (2,2)는 문자 이런 식으로 구분이 되어 있어요. 이렇게 뒤에 붙는 값, 즉 SpecialCells의 [value] 값은 하나하나 적어드리긴 힘들긴해요! 그래서 가장 많이 쓰는 기능인 (2) 빈 셀 제외 선택을 알려드렸고, 혹시라도 추가적으로 응용할 기능이 필요하시다면 해당 값은 구글 검색하면 언제든지 볼 수 있답니다.

 

 

위처럼 16을 입력하면 에러값만 4는 논리값만 1은 숫자만 이런게 보이시죠? 마이크로소프트 홈페이지에도 나와 있어요. https://learn.microsoft.com/ko-kr/office/vba/api/excel.xlspecialcellsvalue

 

XlSpecialCellsValue enumeration (Excel)

Office VBA reference topic

learn.microsoft.com

 

영어로 나와있으니 꼭 크롬으로 접속하신 후에 한글번역을 눌러주세요!


더 많은 글을 보고 싶다면 아래 링크를 눌러주세요! 

https://yydandy.tistory.com/category/%EC%B7%A8%EB%AF%B8/%EC%97%91%EC%85%80

 

'취미/엑셀' 카테고리의 글 목록

일상, 맛집, 공부 등 내 삶을 기록해보자.

yydandy.tistory.com

 

반응형