사용자가 시트 번호, 테스트 섹션 및 재료를 수동으로 입력하는 기본 워크 시트 (Install_Input)가 있습니다.행 값에 해당하는 시트 생성 (중복 값 있음)
(아래 : 범위 A1 : Install_Input의 WS의 그림 C8)
시트 # | TestSection | 재질
..... 1 ..... | .......... A .......... | .STEEL |
..... 2 ..... | .......... B .......... | .PLASTIC. |
..... 3 ..... | .......... C .......... | .STEEL |
..... 5 ..... | .......... G .......... | .STEEL |
..... 2 ..... | .......... F .......... | .PLASTIC. |
..... 2 ..... | .......... A .......... | .STEEL |
..... 5 ..... | .......... D .......... | .PLASTIC. |
현재 통합 문서에서 Install_Input에 입력 된 시트 번호에 해당하는 시트를 생성하려고합니다. 내가 만든 코드는 MyRange의 각 값에 대해 새로운 시트를 생성합니다. 이미 존재하는 시트 생성을 코드에서 건너 뛰고 싶습니다. "On Error Resume Next"및 "On Error GoTo 0"명령을 사용하여이 문제를 해결하려고 시도했지만 이미 존재하는 시트를 보완하기 위해 이름없는 시트를 생성했습니다.
Sub Consolidate_Sheets()
Dim MyCell As Range
Dim MyRange As Range
Dim ws As Worksheet
Set MyRange = Sheets("Install_Input").Range("A2")
Set MyRange = Range(MyRange, MyRange.End(xlDown))
For Each MyCell In MyRange
If Sheets(Sheets.Count).Name <> MyCell.Value Then
'On Error Resume Next
Sheets.Add After:=Sheets(Sheets.Count)
Sheets(Sheets.Count).Name = MyCell.Value
'On Error GoTo 0
End If
Next MyCell
End Sub