| 
    
     |  | ▼こうちゃん さん: 
 ロジックをいれましたが「シート名をほかのシート、VISUAL BASICで参照されるオブジェクトライブラリまたはワークシート名と同じ名前に変更することはできません」とでます。
 どうすればいいのでしょうか?どうかご教示ください。
 
 Sub test()
 Dim i As Long
 Dim A As Integer
 Dim d As String
 Dim ws1 As Worksheet
 Dim ws2 As Worksheet
 Dim wsFlg As Boolean
 
 Set ws1 = Worksheets("一覧")
 For i = 2 To ws1.Range("A65535").End(xlUp).Row
 d = ws1.Cells(i, 10).Value
 
 wsFlg = False
 For Each ws2 In Worksheets
 If ws2.Name = d Then
 wsFlg = True
 Exit For
 End If
 
 If Not wsFlg Then
 
 Worksheets("a").Copy after:=Worksheets(Worksheets.Count)
 
 '↓いれました。
 Worksheets(Worksheets.Count).Name = d
 
 A = 13
 
 Else
 
 A = Worksheets(d).Range("A65536").End(xlUp).Row + 1
 End If
 
 ActiveSheet.Cells(8, 2).Value = ws1.Cells(i, 9).Value
 ActiveSheet.Cells(8, 5).Value = ws1.Cells(i, 10).Value
 ActiveSheet.Cells(A, 1).Value = ws1.Cells(i, 4).Value
 ActiveSheet.Cells(A, 2).Value = ws1.Cells(i, 5).Value
 ActiveSheet.Cells(A, 3).Value = ws1.Cells(i, 6).Value
 ActiveSheet.Cells(A, 4).Value = ws1.Cells(i, 7).Value
 ActiveSheet.Cells(A, 5).Value = ws1.Cells(i, 11).Value
 ActiveSheet.Cells(A, 11).Value = ws1.Cells(i, 12).Value
 ActiveSheet.Cells(A, 11).Value = ws1.Cells(i, 12).Value
 A = A + 1
 Next
 Next
 End Sub
 
 
 |  |