copyメソッド実行に
'実行時エラー1004'
Worksheet クラスのCopyメソッドが失敗しました。
といったエラーが発生してしまいます。
原因、解消方法など分からずに困っております。
ソースは以下になりますので、誰か助言をお願い致します。
Sub CreateText()
Call ChooseSheet(Worksheets("database"))
'先頭シートをアクティブ
ThisWorkbook.Worksheets("execute").Activate
End Sub
'##
'## フォーマットの決定
'##
Sub ChooseSheet(currentSheet As Worksheet)
Dim i As Integer
Const format As String = "format"
Const format2 As String = "format2"
i = 1
Do
i = i + 1
Call deleteSheet
Loop Until currentSheet.Cells(i, "C") Like "*"
Do While currentSheet.Cells(i, "C") <> ""
'活動日により作成フォーマットを分ける
If currentSheet.Cells(i, "S") = "○" And currentSheet.Cells(i, "T") = "○" Then
Call CreateNewSheet(currentSheet, format2, i)
ElseIf currentSheet.Cells(i, "S") = "○" Then
Call CreateNewSheet(currentSheet, format, i)
ElseIf currentSheet.Cells(i, "T") = "○" Then
Call CreateNewSheet(currentSheet, format, i)
Else
MsgBox "参加者名: " + currentSheet.Cells(i, "C") + " さんの活動日に記載がありません。"
Exit Do
End If
i = i + 1
Loop
End Sub
'##
'## フォーマットコピー
'##
Sub CreateNewSheet(currentSheet As Worksheet, format As String, i As Integer)
Dim headerTitle As String
Const day06 As String = "10月6日"
Const day07 As String = "10月7日"
Worksheets(format).Copy After:=Worksheets(Worksheets.Count)
ActiveSheet.name = currentSheet.Cells(i, "A")
'チーム設定
ActiveSheet.Cells(26, "V") = currentSheet.Cells(i, "B")
'活動日設定
If format = "format" Then
ActiveSheet.Cells(29, "Y") = day06
Else
ActiveSheet.Cells(29, "Y") = day06
ActiveSheet.Cells(30, "G") = day07
End If
'ヘッダー設定
headerTitle = currentSheet.Cells(i, "C")
ActiveSheet.PageSetup.LeftHeader = "&""MS Pゴシック""&10" & headerTitle + " 様"
End Sub
'##
'## 重複名シート削除
'##
Sub deleteSheet()
Dim j As Integer
Dim str As String
Dim tempSheet As Worksheet
j = 1
For Each tempSheet In Worksheets
str = j
If tempSheet.name = str Then
Application.DisplayAlerts = False
tempSheet.Delete
j = j + 1
End If
Next tempSheet
End Sub
| ツイート |
|