본문 바로가기

엑셀로 풀어가는 세상

엑셀 VBA #32 / 자동필터_1 [VBA]

엑셀 VBA #32 / 자동필터_1 [VBA]


Dim sh1 As Worksheet, rng As Range

Set sh1 = Sheets("자동필터")
Set rng = Range("A1").CurrentRegion

If sh1.AutoFilterMode = False Then rng.AutoFilter
    '만약 sh1 시트에 자동필터모드가 아니라면(false), rng영역에 자동필터해라
If sh1.FilterMode = True Then sh1.ShowAllData
    '만약 sh1시트에 필터링 되었다면(즉 필터링 데이타가 보여진다면), sh1시트의 모든 데이타를 보이게 해라.
    '구문 'FilterMode=True'에서 True는 생략 가능함. 즉 If sh1.FilterMode then sh1.ShowAllData로 해도 됨

rng.AutoFilter 2, Range("E2")
    'rng영역에 자동필터해라, 자동필터 기준은 rng영역의 2번째이며 조건은 E2셀이다.
rng.SpecialCells(xlCellTypeVisible).Copy Range("A20")
    'rng영역에서 보여지는 셀들(Visible SpecialCells) A20셀에 복사해라

결과값
vba#32.xlsm
0.02MB

 

 

 


https://www.youtube.com/watch?v=GqDstYjUv00&list=PLfxvqpVCYZ8e0qlyc_FU46neoWjO7yTWj&index=32

 

엑셀 VBA #09 / 셀 범위 선택하기_4 [VBA] - SpecialCells

 

 

반응형