1. for each ~ next 문 2. "고유의 목록" 추출 3. worksheet 함수 사용하기 for each ~ next 문 시트 숨기기를 for each 문으로 변경해 보면 sheet1, 도전, 성공의 시트를 남기고, 1월~12월의 시트는 모두 숨기기 하면 되겠네요.
Dim i As Worksheet For Each i In ThisWorkbook.Worksheets If i.Name = "Sheet1" Then ElseIf i.Name = "도전" Then ElseIf i.Name = "성공" Then Else i.Visible = False End If Next 위의 내용을 동적 변수를 이용하여, 숨기고자 하는 시트들의 이름을 이 변수에 넣어준 다음, for 문이 완료된 후에 visible을 이용하여 숨기기를 진행하는 것으로 아래 코드와 같이 작업을 하고 실행을 해보면, 시트들을 숨기는 작업은 잘 되는데, 숨겨진 시트를 다시 보이도록 할 때 와 같은 오류가 발생하네요...
#
vbaforeachnext
#
vbanewcollection
#
vbasumif
#
vbaworksheetfunction함수
#
vbaworksheet함수
#
vba고유값추출
#
vba시트숨기기
#
vba중복값제거