엑셀 팁

엑셀에서 모든 시트 이름을 추출해 주는 vba 코드(시트명 자동 추출)

아무개a 2023. 2. 18. 17:14
반응형

엑셀로 업무를 하다보면

정말 수많은 시트가 한 파일에 있는 경우가 있습니다.

이 워크시트들의 업데이트 여부나 필요여부 등을 조사할때 시트명을 추출할 필요가 있는데요

그때 하나씩 워크시트를 선택해가며 이름을 복사하기에는 손이 너무 많이 갑니다.

그럴때는 ALT+F11을 누른뒤 삽입-모듈 을 선택하여 다음 코드를 활용하면 좋습니다.

Sub ListAllSheetNames()
Dim ws As Worksheet
Dim i As Integer

'새 시트 생성
Worksheets.Add(After:=Worksheets(Worksheets.Count)).Name = "Sheet Names"

i = 1
For Each ws In Worksheets
'시트 이름 리스트업
If ws.Name <> "Sheet Names" Then ' Sheet Names 시트 이름 제외
Sheets("Sheet Names").Cells(i, 1) = ws.Name
i = i + 1
End If
Next ws
End Sub


실행버튼(재생버튼)을 누르면 다음과 같이 새로운 시트가 생성되어 모든 워크시트명이 리스트업 된걸 알 수있습니다.

다만 Sheet Names 워크시트가 이미 있는 경우는 코드가 에러날 수 있으니
VBA코드를 재 실행하실때는 Sheet Names 워크시트를 지운 뒤 실행해주세요

반응형