| 
    
     |  | 以前、枠線の非表示でお世話になりました。 
 今回は、新規ブックを作成させてそのブックにシートを
 コピーしたいと思っています。以前も利用していた下記
 コードで’シート1書き込みの所にマクロで記録した
 コードを入れたのですがエラーになってしまいます。
 なにせ初心者なので見当違いの質問かもしれませんが
 よろしくお願いします。
 
 
 Private Sub CommandButton2_Click()
 
 Dim objApp  'Excelアプリ
 Dim objBook  'ExcelBook
 Dim objSheets  'ExcelSheets
 Dim objSheet  'ExcelSheet
 Dim strMsg  'エラーメッセージ
 Dim strXlsPath  '保存Excelファイル
 Dim i
 Dim xlNormal
 
 Dim myDate As String
 
 xlNormal = -4143
 
 'Excel の保存先
 myDate = Format(ActiveSheet.Range("f14"))
 myDate2 = Format(ActiveSheet.Range("w14"))
 strXlsPath = "C:\Documents and Settings\sim\デスクトップ\" _
 & myDate & myDate2 & ".xls"
 
 '=====================================================================
 'Excelを起動する
 '=====================================================================
 On Error Resume Next
 Err.Clear
 Set objApp = CreateObject("Excel.Application")
 If Err Then
 'エラー処理
 strMsg = strMsg & "Excelを起動できませんでした" & vbCrLf
 strMsg = strMsg & "Err.Number:" & Err.Number & vbCrLf
 strMsg = strMsg & "Err.Description:" & Err.Description & vbCrLf
 End If
 'エラー処理の初期化
 On Error GoTo 0
 If strMsg <> "" Then
 'エラーメッセージの表示
 MsgBox strMsg, vbCritical, "Excel の作成"
 Else
 '===================================================================
 '新規ワークシートを作成
 '===================================================================
 objApp.Workbooks.Add
 '非表示にする
 objApp.Application.Visible = False
 '確認ダイアログを表示させない
 objApp.DisplayAlerts = False
 
 Set objBook = objApp.ActiveWorkbook
 Set objSheet = objBook.Sheets(1)
 シート1のみ残して後は削除
 For i = 2 To objSheets.Count
 objBook.Sheets(2).Delete
 
 
 Next
 
 'シート1の書き込み
 'Set objSheets = Sheets("作業シート")
 Sheets("作業シート").Copy Before:=Workbooks(objBook).Sheets(1)
 
 
 '新規ブックを保存
 objBook.SaveAs Filename:=strXlsPath, _
 FileFormat:=xlNormal, _
 Password:="", _
 WriteResPassword:="", _
 CreateBackup:=False
 '読み取り専用で
 'ReadOnlyRecommended:=True,
 
 
 'Excelの終了
 objApp.DisplayAlerts = True    '確認ダイアログを表示させる
 objBook.Close
 objApp.Quit
 
 'オブジェクトの解放
 Set objSheet = Nothing
 Set objSheets = Nothing
 Set objBook = Nothing
 Set objApp = Nothing
 
 'エラーメッセージの表示
 MsgBox "Excel を作成しました。", vbInformation, "Excel の作成"
 
 End If
 
 End Sub
 
 |  |