Microsoft Access VBA - Accessのデータオブジェクトを外部に出力する方法
◆OutputToメソッド
OutputToメソッドは、Accessのデータベースオブジェクト(データシート、フォーム、レポート、モジュール、データアクセスページ)のデータを、Excelやテキスト、HTMLなどの他のファイル形式のデータに出力するメソッドです。Accessデータベースのデータを他のアプリケーションで利用する場合に使用します。なお、出力したデータの種類によっては対応するアプリケーションが必要になります。
◆データベースオブジェクトを他のファイル形式で出力する書式
Object.OutputTo ObjectType,ObjectName,OutputFormat,
outputFile,AutoStart,
TemplateFile,Encoding
[ObjectName]という名前の[ObjectType]を[OutputFile]という名前の[OutputFormat]形式のファイルに出力する。
Docmd.OutputTo acOutputTable,"顧客マスタ",acFormatHTML,
"顧客マスタ.html",True
「顧客マスタ」という名前のテーブルを「顧客マスタ.html」というHTML形式のファイルに出力して、出力後に自動で開くようにする。
◆OutputToメソッドの設定項目
Object
[object]には、Docmdオブジェクトを指定します。DoCmdオブジェクトは、Accessオブジェクトの1つを返します。
引数
ObjectType | 出力するデータを含むオブジェクトの種類を組み込み定数で指定します(下表参照)。 |
ObjectName | 出力するデータを含むオブジェクトの名前を指定します(省略可)。 |
OutputFormat | データの出力形式を組み込み定数で指定します(省略可)。省略した場合、出力形式を確認するダイアログボックスが表示されます。 |
OutputFile | データの出力先ファイル名をフルパスで指定します。拡張子は、[ObjectType]で指定した出力形式の標準の拡張子をつけます。Excelの場合は.xls、テキスト形式の場合は.txtのように指定します(省略可)。省略した場合、出力ファイル名を確認するダイアログボックスが表示されます。 |
AutoStart | OutputToメソッドの実行後、[ObjectType]で指定したファイルの種類に対応するソフトウェアを起動して、[OutputFile]で指定して出力したファイルを開くかどうかを指定します(省略可)。省略した場合、[False]または「0」を設定したとみなされます。 |
TemplateFile | 拡張子が.html、htx、または.aspのファイルで、テンプレート(HTMLタブを含むファイル)として使用するファイルのパス名およびファイル名を指定します(省略可)。 |
Encoding | テキストまたはHTMLデータを出力する際に使用する文字エンコード形式の種類をバリアント型で指定します(省略可)。省略した場合、テキストの場合はWindows標準のエンコード形式が使用され、HTMLの場合は既定のシステムエンコード形式が使用されます。 |
[ObjectType]の設定値 | 説明 |
acOutputDataAccessPage | データアクセスページを出力します。 |
acOutputForm | フォームオブジェクトを出力します。 |
acOutputModule | モジュールブジェクトを出力します。 |
acOutputQuery | クエリブジェクトを出力します。 |
acoutputReport | レポートブジェクトを出力します。 |
acOutputSeverView | サーバビューブジェクトを出力します。 |
acOutputStoredProcedure | ストアドプロシージャブジェクトを出力します。 |
acOutputTabel | テーブルブジェクトを出力します(既定値)。 |
[OutputFormat]の設定値 | 説明 |
acFormatASP | Microsoft Active Server Pagesの形式に出力します。この組み込み定数は、テーブル、クエリ、およびフォームを出力するときにのみ設定できます。 |
acFormatDAP | データアクセスページの形式に出力します。 |
acFormatHTML | HTML形式に出力します。データアクセスページはHTML形式でのみ出力可能です。 |
acFormatIIS | Microsoft Internet Information Server形式に出力します。この組み込み定数は、テーブル、クエリ、およびフォームを出力するときにのみ設定できます。 |
acFormatRTF | リッチテキスト形式に出力します。 |
acFormatSNP | スナップショット形式に出力します。 |
acFormatTXT | テキスト形式に出力します。 |
acFormatXLS | Microsoft Excel形式に出力します。 |
[AutoStart]の設定値 | 説明 |
Trueまたは-1 | 出力したファイルを対応するアプリケーションですぐに起動します。 |
falseまたは0 | アプリケーションで起動しません(既定値)。 |
◆Sample
次の例は、オプショングループ「出力形式区分」で1を選択すると、[Customers]テーブルをリッチテキスト形式(2を選択するとHTML形式)で出力し、対応するアプリケーションですぐに表示します。
Private Sub cmd外部へ出力_Click() If Me.出力形式区分 = 1 Then DoCmd.OutputTo acOutputTable, "Customers", _ acFormatRTF, "Customers.rtf", True Else DoCmd.OutputTo acOutputTabe, "Customers", _ acFormatHTML, "Customers.html", True End If End Sub
▼ページトップに戻る