Range 개체 란>
Range 개체는 VBA로 프로그래밍을 할 때 가장 빈번하게 사용되는 중요한 개체입니다. 엑셀에 입력되는 대부분의 데이터들이 Range 오브젝트에 보관됩니다. Range 개체에 자유자재로 접근하기 위한 첫 번째 과제는 우선 셀을 선택하는 것입니다. 그러기 위해서는 Range 속성과 Cells 속성의 특성을 잘 이해하고 있어야 합니다.
샘플 코드
'' Range 영역의 왼쪽 상단과 오른쪽 하단 끝에 셀을 지정한다.
ActiveSheet.Range(Cells(1, 1), Cells(9, 1)).Select
ActiveSheet.Range("A1:B9").Select
'' Range 첫 번째 인수가 왼쪽상단, 두 번째가 오른쪽하단 모서리가 된다.
ActiveSheet.Range("A1", "B9").Select
'' GoTo 를 이용해서 두 번째 워크시트에 접근한다.
Application.Goto (ActiveWorkbook.Sheets("Sheet2").Range("A2"))
Range 응용
1. 연속되는 데이터 열의 마지막 셀을 선택하고 싶을 때
- 워크시트에 값을 기존 데이터의 끝에 추가 하고 십습니다. 시트에서 데이터 끝이 어디인지 알아야 합니다. 그 때 이용
하는 것이 End 함수와 xlDown 상수 입니다. xlDown 은 아래 방향을 가리킵니다. 만약 xlUp 이 들어가면 “A1” (맨위) 셀
이 선택됩니다. 아래 코드는 "A1" Cell의 맨 끝을 선택 합니다.
ActiveSheet.Range("a1").End(xlDown).Select
2. 행의 개수 알아보는 방법
Sub RowCount()
Dim lastRow As Long
lastRow = Sheet1.Cells(Rows.Count, 1).End(xlUp).Row
MsgBox "1번행의 개수: " & lastRow
End Sub
다음과 같이 코드로 만들수 있습니다
lastRow = Cells(Rows.Count, "A").End(xlUp).Row
3. 열의 개수 알아보는 방법
Sub ColumnCount()
Dim lastColumn As Long
lastColumn = Sheet1.Cells(1, Columns.Count).End(xlToLeft).Column
MsgBox "1번열의 개수 : " & lastColumn
End Sub
다음과 같이 코드로 만들수 있습니다
lastColumn = Sheet1.Cells("A", Columns.Count).End(xlToLeft).Column
아래 코드는 "행"에 공란이 있어도 마지막을 선택 할수 있습니다
Cells(Rows.Count, "C").End(xlUp).Select
4. 특정 범위의 행 (Row) 개수 구하는 코드 - 매우 자주 사용 하는 코드 입니다 (↓)
Dim rng as Range
Dim rn as Long
Set rng = Worksheets("Sheet2").Range("B10", Cells(Rows.Count, "B").End(xlUp))
rn = rng.Rows.count
5. 특정 범위의 열 (Column) 개수 구하는 코드 - 매우 자주 사용 하는 코드 입니다 (→)
Dim oColumnscount As Long
oColumnscount = Cells(6, Columns.Count).End(xlToLeft).Column
oColumnscount = oColumnscount -2
6. Cells 속성으로 셀 범위(하나 이상의 셀)에 접근하고자 할 때에는 Range 속성과 조합해서 아래와 같은 형태로 사용합니다.
Range(Cells(3, 2), Cells(10, 5)).Select
>> Range, cell 참고 자료
1. 셀 선택 하는 방법
- Range("A10").Select
- Cells(15, 1).Select
2. 열번호 찾는 방법 - 작업 실행 창에서 알보기
? range("az10").Column
3. 변수로 셀 선택 하기
Dim cn As Long
cn = 7
Range("A" & cn).Select
4. Cells 객체 "자동 구성원 목록" 생성 하는 방법
Dim c as Range
set c = cells ( 7, "A")
c.Select
'VBA Code' 카테고리의 다른 글
로그인 (0) | 2021.01.26 |
---|---|
Class 와 객체 (object) (0) | 2020.12.22 |
MS Office 파일 ZIP (0) | 2020.12.05 |
Object / Methods / properties 란 무엇인가? (0) | 2020.12.04 |
VBA 기초 문법 - For문 (0) | 2020.12.04 |