お世話様です。ネットの記事を読んで作成しましたが、VBA勉強不足のために途中で止まりました。
以下、2つのコードです。ご教示をよろしくお願いします。
■DAOでエクスポートをしようとした
Private Sub コマンド53_Click()
Dim SQL As String
Dim dbs As DAO.Database
Dim qdf1 As DAO.QueryDef
Dim qdf2 As DAO.QueryDef
Dim qdf3 As DAO.QueryDef
Dim rst1 As DAO.Recordset
Dim rst2 As DAO.Recordset
Dim rst3 As DAO.Recordset
Dim xls As Object
Dim strSaveBookPath As String
'テンプレートの保存先フォルダ
Const cstrTemplateDir As String = "\SV30**\metal2*課\HDD\リフォーム見積りDB\見積書\"
Const cstrTemplateBook As String = "RF見積書.xlsx" 'テンプレートのファイル名
Const cstrSaveBookDir As String = "\SV30\metal2***課\HDD\リフォーム見積りDB\見積書\" 'データが代入されたファイルの保存先フォルダ
Set dbs = CurrentDb 'データ元のクエリを開く
Set qdf1 = dbs.QueryDefs("Q_見積明細1_P") 'クエリのオブジェクトを取得します
With qdf1
'クエリのオブジェクトに対して設定を行います。”抽出する○○ID”などがパラメータ名です
.Parameters("見積りNo").Value = Forms!F_見積!見積りNo
Set rst1 = .OpenRecordset '設定後のクエリオブジェクトを元にRecordsetを開きます
End With
Set xls = CreateObject("Excel.Application") 'Excelオブジェクトを生成
With xls
.ScreenUpdating = False '画面の再描画を抑止
.Workbooks.Open cstrTemplateDir & cstrTemplateBook 'テンプレートファイルを開く
.Workbooks(cstrTemplateBook).WorkSheets("Sheet1").Copy 'ワークシートをコピー
.DisplayAlerts = False 'テンプレートファイルを閉じる
.Workbooks(cstrTemplateBook).Save
.Workbooks(cstrTemplateBook).Close
.DisplayAlerts = True
.Cells(2, 1).CopyFromRecordset rst1
Set qdf2 = dbs.QueryDefs("Q_明細2_R")
With qdf2
.Parameters("見積りNO") = Forms!F_見積!見積りNo
Set rst2 = .OpenRecordset
End With
Set xls = CreateObject("Excel.Application")
With xls
■次に続きます