my함수 DynamicRange
2024. 12. 5. 20:52지정된 워크시트에서 특정 열(i)과 초기 행(InitRow)을 기반으로 동적 범위(Address)를 반환하는 함수
Function DynamicRange(WS As Worksheet, Column As String, InitRow As Long) As Range
Dim i As Long
Dim Address As String
i = WS.Range(Column & "1048576").End(xlUp).Row
If i < InitRow Then i = InitRow *초기값보다 i가 크더라도 초기값을 포함하기 위함
Address = Column & InitRow & ":" & Column & i 'a2:a13
Set DynamicRange = WS.Range(Address)
End Function
i는 워크시트의 Column행 마지막 셀에서 Ctrl+up한 셀의 행번호
i가 행의 초기값보다 작다면 i는 행의 초기값(InitRow)이다
Address는 Coulumn_InitRow : Column_i 라는 동적 범위
Sub TestDynamicRange()
Dim myRange As Range
Set myRange = DynamicRange(Sheet1, "A", 2)
End Sub
함수 DinamicRange를 사용해서 간편하게 Sheet1에서 A2:A마지막셀 (A2:A1048576)을 myRange로 설정할 수 있다.
'VBA 이론' 카테고리의 다른 글
고급필터 + VBA (0) | 2024.12.17 |
---|---|
Workbook, WorkSheet, Range (0) | 2024.12.03 |
범위 선택, Function() (0) | 2024.11.21 |
파일을 실행하는 VBA (1) | 2024.11.19 |
영어 주소지를 한글로 변환해주는 VBA (3) | 2024.11.15 |