사원 리스트 대로 시트를 복사해야하는데
일일히 시트 복사 하기는 시간이 너무 걸려서
어떻게 방법 없을까 물어봤는데
엑셀의 VBA 실행 방법부터 코드까지 차근차근 알려주는데
한큐에 실행이 되어버려서 감동했다.
Sub CreateSheetsFromNames()
Dim ws As Worksheet
Dim rng As Range
Dim cell As Range
Dim wsTemplate As Worksheet
Dim wsNew As Worksheet
Set ws = ActiveSheet
Set rng = ws.Range("A2:A" & ws.Cells(ws.Rows.Count, "A").End(xlUp).Row)
' 복사할 시트 이름을 여기에 입력하세요.
Set wsTemplate = ThisWorkbook.Sheets("템플릿시트이름")
Application.ScreenUpdating = False
For Each cell In rng
wsTemplate.Copy After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)
Set wsNew = ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)
wsNew.Name = cell.Value
Next cell
Application.ScreenUpdating = True
End SubSub CreateSheetsFromNames()
Dim ws As Worksheet
Dim rng As Range
Dim cell As Range
Dim wsTemplate As Worksheet
Dim wsNew As Worksheet
Set ws = ActiveSheet
Set rng = ws.Range("A2:A" & ws.Cells(ws.Rows.Count, "A").End(xlUp).Row)
' 복사할 시트 이름을 여기에 입력하세요.
Set wsTemplate = ThisWorkbook.Sheets("템플릿시트이름")
Application.ScreenUpdating = False
For Each cell In rng
wsTemplate.Copy After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)
Set wsNew = ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)
wsNew.Name = cell.Value
Next cell
Application.ScreenUpdating = True
End Sub
댓글 1