ray88’s diary

お仕事で困ったとき用の自分用の覚書

Docmdオブジェクト データベースを様々な形式で出力する(OutputTo)

■OutputToメソッドはテキストを様々な形式で出力できるが、大量データの出力には不向き。
 大量データの出力にはTransferTextまたはTransferSpreadsheetメソッドの使用を推奨。

■データをExcelファイル形式で出力する場合、OutoputToメソッドで出力すると書式のある状態で、TransferSpreadsheetメソッドで出力すると書式のない状態でそれぞれ出力される
【書式】

Docmd.OutputTo オブジェクトの種類,オブジェクト名,出力形式,ファイル名,ファイルを開く

(例)

Sub Test10()
    DoCmd.OutputTo acOutputTable, "T社員名簿", acFormatHTML, _
                                    "C:\temp\T社員名簿2.html", True
    DoCmd.OutputTo acOutputTable, "T社員名簿", acFormatXLS, _
                                    "C:\temp\T社員名簿2.xls", True
End Sub

f:id:ray88:20201123100748p:plain
f:id:ray88:20201123100820p:plain
【引数】
※「オブジェクト名を省略するとアクティブなオブジェクトが出力される。
※「出力形式」を省略すると出力形式を選択するダイアログボックスが表示される
※「ファイル名」を省略するとファイル名を指定するダイアログボックスが表示される

引数 定数 説明
オブジェクトの種類 acOutputTable テーブルを対象にする
acOutputQuery クエリを対象にする
acOutputForm フォームを対象にする
acOutputReport レポートを対象にする
acOutputModule モジュールを対象にする
オブジェクト名(省略可 出力の対象となるオブジェクト名を指定する
出力形式(省略可) acFormatHTML HTML形式で出力する
acFormatRTF リッチテキスト形式で出力する
acFormatTXT テキスト形式で出力する
acFormatXLS Excelファイル形式で出力する
ファイル名(省略可) 出力するパスとファイル名を指定する
ファイルを開く(省略可) True 出力後にファイルを開く
False(既定) 出力後にファイルを開かない

ray88.hatenablog.com
ray88.hatenablog.com