
動画で楽にパソコンが身につく方法はこちら>>
VBAでエクセルブックを生成し、シートを追加する手順は以下のとおりです。
1 エクセルオブジェクトを生成する。
2 エクセルブックを生成する。
3 エクセルシートを挿入する。
4 エクセルブックを保存し、オブジェクトを終了させる。
エクセルブックを生成してシートを挿入するコードの一例は以下の通りです。
Dim filename As String
文字列型変数を宣言します。
filename = Forms!F_home2!顧客 & “_” & Format(CStr(Forms!F_home2!sday), “yymm”) & “.xls”
エクセルファイルをフォームの日付をもとに名前をつけます。
If Dir(pas & filename) = vbNullString Then
IF Dir (ファイル名)でそのファイルが存在するかを調べることが出来ます。
存在しなければvbNullStringという値を返します。
Dim objBook0 ‘ExcelBook
Dim objSheets0 ‘ExcelSheets
Dim objSheet0
Dim oApp0 As Object
Set oApp0 = CreateObject(“Excel.Application”)
oApp0.Workbooks.Add
oApp0.Application.Visible = False
上記でエクセルオブジェクトを宣言し、生成します。
‘filename = “調理指示書.xls”
‘確認ダイアログを表示させない
oApp0.DisplayAlerts = False
Set objBook0 = oApp0.ActiveWorkbook
Set objSheets0 = objBook0.Worksheets
objSheets0.Add count:=5
5つのシートをエクセルブックに挿入します。
Set objSheet0 = objBook0.Sheets(1)
With objSheet0
.name = “日計表”
End With
シート1には日計表という名前でシートを挿入します。
以下も同様です。
Set objSheet0 = objBook0.Sheets(2)
With objSheet0
.name = “食数表”
End With
Set objSheet0 = objBook0.Sheets(3)
With objSheet0
.name = “業者別金額”
End With
Set objSheet0 = objBook0.Sheets(4)
With objSheet0
.name = “業者別材料”
End With
Set objSheet0 = objBook0.Sheets(5)
With objSheet0
.name = “業者別日計”
End With
objBook0.SaveAs filename:=pas & filename
エクセルブックを保存します。
‘oApp.Workbooks(filename).Close SaveChanges:=True
objBook0.Close
oApp0.Quit
‘オブジェクトの解放
Set objBook0 = Nothing
Set objSheets0 = Nothing
Set objSheet0 = Nothing
Set oApp0 = Nothing
エクセルオブジェクトを終了し、開放します。
End If

動画で楽にパソコンが身につく方法はこちら>>