まずは、フォーム。
絞り込む。
絞り結果をExcelへ保存。(VBAにて)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Private Sub 絞込_Click()
Me.RecordSource = "select * from Q明細 where 品名 Like '*" & Me.検索品名 & "*'"
End Sub
Private Sub 解除_Click()
Me.RecordSource = "select * from Q明細"
End Sub
Private Sub 結果をExcelへ保存_Click()
'指定クエリをExcelへ保存
'DoCmd.TransferSpreadsheet acExport, 8, "Q明細", CreateObject("WScript.Shell").SpecialFolders("Desktop") & "\明細.xls", True, ""
'一時クエリを作成しExcelへ保存
'CurrentDb.CreateQueryDef "明細_検索結果", Me.RecordSource
'DoCmd.TransferSpreadsheet acExport, 8, "明細_検索結果", CreateObject("WScript.Shell").SpecialFolders("Desktop") & "\明細_検索結果.xls", True, ""
'DoCmd.DeleteObject acQuery, "明細_検索結果"
'汎用化
結果をExcelへ保存 "明細_検索結果"
End Sub
Public Sub 結果をExcelへ保存(FileName As String)
CurrentDb.CreateQueryDef FileName, Me.RecordSource
DoCmd.TransferSpreadsheet acExport, 8, FileName, CreateObject("WScript.Shell").SpecialFolders("Desktop") & "\" & FileName & ".xls", True, ""
DoCmd.DeleteObject acQuery, FileName
End Sub
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
感想。
データが多くなければ、Accessって1ステップ程度で
レコード操作もファイル出力も行えて便利ーーー♪

