본문 바로가기
엑셀 (Excel)

엑셀 매크로 VBA SpecialCells 활용 조건에 맞게 셀 선택 방법

by ★√★ 2022. 11. 14.

엑셀-매크로-SpecialCells-함수-썸네일
엑셀-매크로-SpecialCells-함수-썸네일

 안녕하세요, 이번 포스팅은 엑셀 매크로 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

     

     

     

    728x90

    댓글