MS Access

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

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

ちょっと、苦労した。

[code]
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
[/code]

-MS Access

執筆者:

関連記事

no image

SqlServerにAccessでいうオートナンバー型をつける

テストデータを作るために、Accessで2万件ほどのデータを用意し、別途追加クエリを作って、ODBC接続したSqlServerに追加しようとしたところ、「型変換エラーがどうのこうので追加出来ない」との …

no image

SqlServer 2008 Express R2 をインストールしようとしているのだが、最後の最後でうまくいかない

前回、試しに自分の普段のPCでSqlServer2008をインストールしたのだが、今回はサーバ(といってもXP)を対象に同様のことをしてみた。 しかしインストールの最後で「there was an e …

no image

AccessのデータをGoogleスプレッドシートに表示する

会社のネットショップで、お客様から電話で荷物の出荷状況について問い合わせがあった場合に、現状ではすぐに対応できていなかった。 荷物の伝票番号は、クロネコヤマトのB2のソフトか、あるいはAccessの業 …

no image

Accessで実行時エラー’2465′ 指定した式で参照されている’txt区分’フィールドが見つかりません

VBAでフォームをMe.RecalcあるいはMe.Requeryしただけで、タイトルのエラーが出るケースに遭遇。F9キーを押すと同じ動作になるはずだが、キー押下では上記エラーは出ず、不思議。 ネット検 …

no image

access覚書

複雑な親子フォームを作る際、テーブル設定でインデックスを2つのフィールドとも「はい (重複あり)」にすることで、親のコンボボックスに子が連動するようになった。 Excelでコピーした表データをテーブル …