엑셀 VBA #34 / 사용자정의 함수 [VBA]
1. 목적 : VBA코딩시 자주 사용되는 수식을 함수화하여 편이성 도모
2. 구조
Function 함수명(인수1,인수2,....) As 자료형
~~~~~
End Function
함수명 : 워크시트함수와 동일하면 안됨
자료형 예시 : Integer, Long,....
3. 활용
'엑셀 VBA #32 / 자동필터_1 [VBA]'에서 사용한 'rng.SpecialCells(xlCellTypeVisible).Count'을 사용자정의함수로 만들기
4. 코드
Dim sh1 As Worksheet
Dim rng As Range
Set sh1 = Sheets("자동필터")
Set rng = Range("A1").CurrentRegion
If sh1.AutoFilterMode = False Then rng.AutoFilter
If sh1.FilterMode = True Then sh1.ShowAllData
rng.AutoFilter 2, Range("E2")
Range("A20").CurrentRegion.Clear
If Fcnt(rng) = 3 Then '사용자정의함수 적용
MsgBox "해당되는 조건의 데이타가 없음"
Exit Sub
End If
rng.SpecialCells(xlCellTypeVisible).Copy Range("A20")
End Sub
Function Fcnt(rng As Range) As Long
Fcnt = rng.SpecialCells(xlCellTypeVisible).Count
End Function
https://www.youtube.com/watch?v=sVEJnYuYvQE&list=PLfxvqpVCYZ8e0qlyc_FU46neoWjO7yTWj&index=34
'엑셀로 풀어가는 세상' 카테고리의 다른 글
엑셀 VBA #39 / 행삭제_기본 [VBA] (0) | 2023.12.14 |
---|---|
엑셀 VBA #37 / 행삽입_변형 [VBA] (0) | 2023.12.14 |
엑셀 VBA #36 / 행삽입_기본 [VBA] (0) | 2023.12.14 |
엑셀 VBA #35 / 고급필터 [VBA] (0) | 2023.12.14 |
엑셀 VBA #33 / 자동필터_2 [VBA] (0) | 2023.12.14 |
엑셀 VBA #32 / 자동필터_1 [VBA] (0) | 2023.12.14 |
엑셀 VBA #31 / 정렬_2 [VBA] - 예제 (0) | 2023.12.14 |
엑셀 VBA #30 / 정렬_1 [VBA] (0) | 2023.12.14 |