
안녕하세요, 이번 포스팅은 엑셀 매크로 SpecialCells을 이용하여 조건에 맞게 셀 선택하는 방법 대해서 작성하도록 하겠습니다. SpecialCells 속성은 원하는 조건의 셀을 선택하게 해주는 코드입니다.
엑셀 메뉴에서는 맨 오른쪽 메뉴에 있는 이동 옵션이라고 이해하시면 됩니다. 해당 메뉴를 사용해도 되지만 어떻게 엑셀 매크로로 구현이 가능한지에 대해서 알아보도록 하겠습니다.
목차
SpecialCells
: 위에서 잠깐 설명 드린 대로 SpecialCells 속성은 원하는 조건의 셀을 선택하는 것이며 엑셀 업무를 하다가 특정 영역의 셀을 선택하고 싶을 때 유용합니다.
저희가 작업을 할 때 가장 많이 사용하는 조건이 “빈 셀 표시” 입니다. 이런 경우에도 SpecialCells 속성을 이용하면 손쉽게 표시를 할 수가 있습니다.
해당 속성을 엑셀 매크로로 구현하지 않아도 엑셀 메뉴에서 이동 옵션을 사용해도 되니 이 부분은 편하신 방법으로 구현하시면 됩니다.

SpecialCells 을 이용하여 조건에 맞게 셀 선택 코드 구현
: 그럼 SpecialCells 을 이용해서 조건에 맞는 셀을 선택할 수 있는 코드를 구현해보도록 하겠습니다. 일단 SpecialCells 속성 코드는 아래와 같이 표현할 수 있습니다.
- SpecialCells 기본 함수 구조
: SpecialCells(옵션1, 옵션 2)
옵션 1에 들어갈 수 있는 속성 값은 기본적으로 어떤 조건으로 셀을 찾을지에 대한 내용입니다. 예를 들어 비어있는 셀 지정을 위해서는 해당 옵션 값에는 “xlCellTypeBlanks”를 입력을 해주시면 됩니다. 그 외 옵션 값은 아래와 같습니다.
옵션1에 들어갈 수 있는 속성 값 | 옵션1에 들어갈 수 있는 속성 값 설명 |
xlCellTypeAllFormatConditions | 모든 서식의 셀 지정 |
xlCellTypeAllValidation | 유효성조건에 만족하는 셀 지정 |
xlCellTypeBlanks | 비어있는 셀 지정 |
xlCellTypeComments | 메모를 포함하고 있는 셀 지정 |
xlCellTypeConstants | 상수를 포함하고 있는 셀 지정 |
xlCellTypeFormulas | 수식을 포함하고 있는 셀 지정 |
xlCellTypeLastCell | 사용된 범위에서 마지막 셀 지정 |
xlCellTypeSameFormatConditions | 동일한 서식의 셀 지정 |
xlCellTypeSameValidation | 동일한 유효성 조건 셀 지정 |
xlCellTypeVisible | 보이는 모든 셀 지정 |
그리고 옵션 2는 1차적으로 기본 조건에 해당하는 Cell에 또 다른 조건을 부여함으로써 자신이 원하는 셀을 더 정확하게 찾는 역할을 하는 옵션이라고 생각하시면 됩니다. 옵션 2차에 입력하는 항목에 대한 속성 정리는 아래와 같이 정리할 수 있습니다.
옵션2에 들어갈 수 있는 속성 값 | 옵션2에 들어갈 수 있는 속성 값 설명 |
xlErrors | 에러가 있는 셀지정 |
xlLogical | 수식이 있는 셀지정 |
xlNumbers | 숫자에 해당하는 셀지정 |
xlTextValues | 텍스트에 해당하는 셀지정 |
그럼 위에서 설명드린 2가지 옵션 값을 가지고 아래와 같은 코드를 구현해보도록 하겠습니다.
- 빈 셀만 선택하는 코드
: ActiveSheet.Range("A1"). CurrentRegion.SpecialCells(xlCellTypeBlanks). Select
위의 코드를 구현을 해보면 아래 그림에서 보이는 것처럼 빈 셀만 선택이 되는 걸 확인하실 수 있습니다.
추가적으로 설명드리면 “A1” 셀을 기준으로 CurrentRegion에 해당하는 영역에 대해서 빈셀을 선택하는 것이지 모든 sheet에 빈셀을 선택하는 건 아닙니다.

- 셀 값은 있고, 텍스트 속성 값을 가진 셀 선택
: ActiveSheet.Range("A1"). CurrentRegion.SpecialCells(xlCellTypeConstants, xlTextValues). Select
위에 코드를 실현을 해보면 셀 값이 있는 셀 중에 “텍스트 값” 이 있는 셀이 선택이 되는 걸 확인하실 수 있습니다.

- 셀 값은 있고, 숫자 속성 값을 가진 셀 선택
: ActiveSheet.Range("A1"). CurrentRegion.SpecialCells(xlCellTypeConstants, xlNumbers). Select
위에 코드를 실현을 해보면 셀 값이 있는 셀 중에 “숫자 값” 이 있는 셀이 선택이 되는 걸 확인하실 수 있습니다.

이상입니다. 지금까지 엑셀 매크로 SpecialCells을 이용하여 조건에 맞게 셀 선택하는 방법 대해서 포스팅을 작성하였습니다. 제 포스팅을 통해서 엑셀과 엑셀 매크로 알아가시는데 도움이 되셨으면 합니다. 감사합니다.
2021.03.15 - [분류 전체보기] - Excel 엑셀 매크로 - 테이블 Header를 이용하여 오름차순 정렬하는 매크로 구현하기
Excel 엑셀 매크로 - 테이블 Header 를 이용하여 오름차순 정렬하는 매크로 구현하기
안녕하세요, Davey입니다. 오늘 포스팅할 내용은 Excel 엑셀 매크로 중에 엑셀 테이블의 Header를 이용하여 오름 차순을 구현할 수 있는 매크로 관련 내용입니다. 오늘 알려드릴 Macro는 BeforeDoubleClic
davey.tistory.com
2022.05.31 - [엑셀 (Excel)/엑셀 매크로 VBA] - 엑셀 매크로 VBA 열 행 추가 삭제 방법
엑셀 매크로 VBA 열 행 추가 삭제 방법
안녕하세요, 이번 글에서는 엑셀 매크로 VBA 열 행 추가 삭제 방법 대해서 작성하도록 하겠습니다. 엑셀을 하면서 단순 업무에 대해서 회의감을 드셨다면 이번에 간단하게 열과 행을 추가하는
davey.tistory.com
2022.11.03 - [엑셀 (Excel)/엑셀 매크로 VBA] - 엑셀 매크로 VBA InputBox 이용하여 값 입력 하기
엑셀 매크로 VBA InputBox 이용하여 값 입력 하기
안녕하세요, 이번 포스팅은 엑셀 매크로 VBA InputBox 이용하여 값 입력하기대해서 알아보도록 하겠습니다. 엑셀 매크로를 사용하다 보면 InputBox를 많이 사용하게 되는데 이 InputBox에 입력하는 값이
davey.tistory.com
2022.10.26 - [엑셀 (Excel)/엑셀 매크로 VBA] - 엑셀 매크로 VBA Clear, ClearContents, ClearFormats 이용 방법
엑셀 매크로 VBA Clear, ClearContents, ClearFormats 이용 방법
안녕하세요, 이번 포스팅은 엑셀 매크로 VBA Clear, ClearContents, ClearFormats 이용 방법 대해서 작성하도록 하겠습니다. 셀에 표현하는 것도 중요하지만 엑셀 매크로를 구현하다 보면 기존에 표현한 셀
davey.tistory.com
2022.07.22 - [엑셀 (Excel)/엑셀 일반] - 엑셀 Excel 셀 텍스트 나누기 (feat. 구분 기호 이용)
엑셀 Excel 셀 텍스트 나누기 (feat. 구분 기호 이용)
안녕하세요, 이번 포스팅은 엑셀 Excel 셀 텍스트 나누기 대해서 설명드리도록 하겠습니다. 엑셀 메뉴에 보면 간단하게 셀 내용을 나눌 수 있는 메뉴가 있는 게 그게 바로 "텍스트 나누기"라는 메
davey.tistory.com
'엑셀 (Excel)' 카테고리의 다른 글
엑셀 매크로 VBA 시트 이동 복사 (맨 앞, 끝으로 시트 이동) (0) | 2024.06.01 |
---|---|
엑셀 매크로 VBA 마지막 행 및 열 찾기 (0) | 2024.05.28 |
엑셀 매크로 VBA InputBox 이용하여 값 입력 하기 (0) | 2022.11.03 |
엑셀 매크로 VBA Clear, ClearContents, ClearFormats 이용 방법 (0) | 2022.10.26 |
엑셀 Excel 셀 텍스트 나누기 (feat. 구분 기호 이용) (1) | 2022.07.22 |
댓글