Jasper Excel
article thumbnail

VBA 기초 다섯 번째 포스팅입니다. 이번 포스팅에서는 데이터 범위 선택에서 자주 쓰이는 Currentregion에 대해서 알아보겠습니다. Currentregion는 주어진 셀을 기준으로 현재 데이터가 포함된 영역을 선택하는 메서드입니다. 이 메서드는 특정 셀을 기준으로 주변에 데이터가 존재하는 영역을 자동으로 선택하여 반환합니다.

currentregion메서드

 

 

 

Currentregion 이해하기

Currentregion은 단어의 뜻을 그대로 풀어보면 현재 영역 이라는 의미입니다.

즉, 특정 셀을 기준으로 주변 데이터 영역을 자동으로 선택할 수 있는 메서드입니다.

 

currentregion 배우기1

 

 

Range("a1"). CurrentRegion.Select

A1셀을 기준으로 연결된 범위를 선택한다. 

 

    

Currentregion은 장단점이 존재합니다.

 

Currentregion 장단점

 

Currentregion 장점

장점은 데이터범위가 늘어남에 따라 역동적으로 범위를 알아서 잡아 낼 수 있습니다.

위 GIF에서 보이는것와 같이 데이터가 H와 I열에 추가가 되어도 연결된 범위를 잡아 낼 수 있는 장점이 있습니다

 

 

 

Currentregion 단점

 

Currentregion 단점

단점은 데이터가 끊겨 있을 경우, 완전한 범위를 잡아내지 못한다는 점입니다.

위 GIF를 보면 3행에 데이터가 하나도 없기에, 연결된 데이터로 인식을 못합니다.

 

 

그래서

Range("a1"). CurrentRegion.Select

의 코드는 a1:g2까지의 범위만 잡아냅니다. 

 

 

Currentregion 대체문법

데이터가 연결이 안 되어있거나, 연결이 되어있는지 확인하기 번거로운 작업을 할 때는

currentregion 대신에 많이 쓰이는 방법도 있습니다.

 

Currentregion 대체

 

 

3행에 데이터가 끊겨 있음에도 A1셀부터 마지막 데이터까지의 데이터 범위를 잡는 방법은 다음과 같습니다.

 

Range("a1", Cells(Rows.Count, "g"). End(xlUp)). Select

"A1" 셀을 기준으로 G열의 마지막 행의 순번을 찾아서 G(마지막행 순번)까지 범위를 잡아서 선택하는 방법입니다.

 

조금 더 풀어서 설명을 하면

 

A1:G열의 마지막 행 순번을 찾아서 동적 범위를 잡는 방법입니다.

 

위 GIF에서는 G열의 마지막 행 순번은 19이므로 A1:G19까지 범위를 선택합니다.

 

위 코드 또한 장단점이 존재합니다.

 

이유는 G열의 마지막 행 데이터가 비워져 있을 경우, 범위가 제대로 안 잡힐 수 있습니다.

 

Currentregion

 

 

위 GIF를 보면 G열의 마지막행은 17입니다.

 

그렇기에, A1:G17까지 범위를 잡아냅니다.

 

상황에 맞는 코드를 입력해야 하지만, 그 외에도 usedrange를 써서 워크시트 내에 입력된 범위를 한 번에 잡을 수 도 있습니다.

 

 

도움되셨으면 좋아요와 구독 부탁드립니다.❤✌

 

예제파일

VBA4.xlsm
0.01MB

 

 

 

 

알고 있으면 유용한 엑셀 기능※

2024년 달력 무료 다운로드

VBA기초 1

VBA기초 2

VBA기초 3

VBA기초 4

 

 

 

profile

Jasper Excel

@Jasper's Excel

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!