
目次
VBAを使って出力する【推奨】
せっかく検索してもExcelに出力できなければ意味がない!今回は、クエリで抽出したデータを、Excelに出力したいと思います。
すぐにお答えします。メインフォームにコマンドボタンを追加して、クリック時のイベントプロシージャに以下のプログラムをコピペしてください。※赤文字のクエリ名だけ書き換えてください。
フォームにコマンドボタンを作成する
コマンドボタンを設置する方法は↓コチラの記事を参照ください。
インベスト・エッジ


【Access⑤】フォームを作成する | インベスト・エッジ
フォームとは? ユーザーインターフェイスを作成できる機能です。前回までで解説した、テーブル・クエリなどを毎回直接操作するのは手間がかかりますよね?フォームでは、…
コマンドボタンにVBAを記述する
Excelに出力するVBA
Private Sub (コマンドボタンの名前)_Click()
Select Case MsgBox("デスクトップに出力されます。", 4, "確認")
Case vbYes
Dim Path As String
Path = CreateObject("WScript.Shell").Specialfolders("Desktop") & "\" & "(クエリ名)" & ".xlsx"
DoCmd.TransferSpreadsheet acExport, 10, "q_meigara", Path, True, ""
MsgBox "エクスポートされました"
End Select
End Sub
Private Sub (コマンドボタンの名前)_Click()
Select Case MsgBox("デスクトップに出力されます。", 4, "確認")
Case vbYes
Dim Path As String
Path = CreateObject("WScript.Shell").Specialfolders("Desktop") & "\" & "(クエリ名)" & ".xlsx"
DoCmd.TransferSpreadsheet acExport, 10, "q_meigara", Path, True, ""
MsgBox "エクスポートされました"
End Select
End Sub
実行すると、デスクトップに「(クエリ名).xlsx」というファイルが作成されるはずです!
他にも出力する方法はありますが、まずは一番使いやすい方法について解説いたしました。
マクロを使って出力する
VBAを使わず代替手段として、マクロを使用して出力する方法を解説いたします。
マクロの新規作成

- リボンの[アクションカタログ]をオンする。最初からなっているかも。
- まだ、目当ての項目が表示されないので、リボンの[すべてのアクションを表示]をオンにする。
- 右側のメニューの[アクション カタログ]から[データのインポート/エクスポート]を展開する。
- その中にある[ワークシートのインポート/エクスポート]を、選択する。
- 左側のマクロの項目にドラッグアンドドロップする。

ドロップすると、↑のような状態になります。ここから一つずつ設定していきます。
詳細設定

- 変換の種類を[エクスポート]にします。デフォルトでは[インポート]になっています。
- テーブル名を入力します。”テーブル名”とありますが、クエリ名でも可能です。今回は以前に作成した銘柄コードから検索するクエリを指定します。
- 出力先のファイル名をフルパスで指定します。すでにファイルがあれば、そちらに出力されますし、無い場合はファイルが新規作成されます。
マクロをフォームのコマンドボタンのクリック時イベントに登録することで、フォームから1クリックで実行できます。
実行結果

マクロを実行して、作成されたファイルを見ると、クエリ名のついたシートが作成され、中にデータが入っています。
右クリックメニューで出力する(基本)

もっとも単純な方法かと思います。ナビゲーションウインドウのクエリを「右クリック」→「エクスポート」→「Excel」と辿っていき、あとは画面の指示に従えば出力できます。
次の記事


【Access⑩】フォームのポップアップ(前面表示)
【フォームのポップアップとは】 フォームもAccess内で実行されていますので、そのままでは周囲をメニューに囲まれて、それを超えて表示することはできません。 周囲を…