MS Access

Accessでフォームフィルタの結果をExcelにエクスポートする

投稿日:2013年6月12日 更新日:

ちょっと、苦労した。

Private Sub cmdDMデータ作成_Click()
On Error GoTo Err_cmdDMデータ作成_Click
Dim rstf As String
Dim F As String
Dim Qdf As QueryDef
F = Me.Filter 'フォームフィルタの内容
rstf = "SELECT * FROM 顧客ID毎カウント WHERE " & F & ";" 'フォームのレコードセット+フィルタ
Set Qdf = CurrentDb.CreateQueryDef("QryTemp", rstf)
'    DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, "QryTemp", CurrentProject.Path & "/DM.xls", True, strSheetName 'Excelで保存
'    DoCmd.TransferText acExportDelim, , "QryTemp", CurrentProject.Path & "/DM.csv", True 'CSVで保存
DoCmd.OutputTo acOutputQuery, "QryTemp" 'ファイル形式を選択して保存
MsgBox "Excelファイルへの出力が終了しました"
DoCmd.DeleteObject acQuery, "QryTemp"
Set Qdf = Nothing
Exit_cmdDMデータ作成_Click:
Exit Sub

Err_cmdDMデータ作成_Click:
MsgBox err.Description
If err.Number = 2302 Then MsgBox "Excelファイルを保存できません。ファイルが開かれていないか確認してください。"
DoCmd.DeleteObject acQuery, "QryTemp"

End Sub

-MS Access

執筆者:

関連記事

Office365にはSharePointリストという表データが保存できる機能がありAccessのリンクテーブルにできる

Office365では、AccessのWebアプリを作れる。 それで今、勉強しているのだが、Office365にはSharePointリストという表データが保存でき、それをAccessのリンクテーブル …

Accessのオブジェクトをデスクトップに作っておくと超便利

結構、知らない人が多いんじゃないかな。 クエリとか、フォームへの直接のリンクを、PCのデスクトップに作れること。 ユーザーがたくさんいて、その中の一部の人には、閲覧はして欲しいけど、編集はして欲しくな …

no image

Accessでファイル選択ダイアログを開いて選択したExcelファイルの先頭シートを読み込み番号が一致するデータの配送日を本日日付で消し込む処理

ファイル選択ダイアログを開いて、選択したExcelファイルの先頭シートを読み込み、番号が一致するデータの配送日を本日日付で消し込む処理(楽天販売DB.mdb) ダイアログを表示する際には、事前にMic …

no image

ドメインのDNSの管理会社を移転したら、BASP21でSMTP送信がエラー

CPIも、BASP21も、どちらもマイナー(笑)なので、誰の役にも立たないかもしれないけど、自分の備忘録として、残します。 これまでCPIでWebもメールも動かしていたが、WebのみをShopifyに …

no image

サブフォームで苦労

Access覚書。 サブフォームつきのフォームからダイアログ・フォームを呼び出す。 ダイアログフォームのリスト形式のレコードをクリックしたら、呼び出し元のフォームのサブフォームに値を追加して、次のため …