- ベストアンサー
AccessVBA データのエクスポート
こんにちは。 AccessVBAについて質問させてください。 私は今商品マスタを操作するためのシステムを作っています。 私が実現したい機能はこのようなものです。 まず「マスタ開く」ボタンで商品マスタを元にした「商品マスタフォーム」を開きます。 そのフォームの中に「書き出し」というボタンを作成し、そのボタンを クリックすると、フォームの中のデータがExcelデータとして表示されるようにしたいのです。 「TransferSpreadsheet」を使用するところまではわかっているのですが、どうもうまくいきません。 エクスポート元のテーブル名(商品マスタ)と指定するのですが、 「オブジェクト"商品マスタ"が見つかりませんでした。名前やパス名が正しいことを確認してください」とでます。 私が書いたソースはこれです↓ DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, "商品マスタ",, True どこがおかしいのかご教授お願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
第4引数 FileName が指定されていないようですね。 第4引数に、出力先の Excel ワークブックのパス(とファイル名)を 指定する必要があります。 もっとも、それが抜けている場合は別のエラーメッセージが出るはずなので、 本当にそれだけが原因なのかどうか、確信はありませんが。 あと、もし出力先をユーザーに指定させたいのであれば、DoCmd.OutputTo が 使えます。これは出力先パスを省略すると、ダイアログが出てきます。 ヘルプに詳しい解説と使用例が載っています。 それでは。
その他の回答 (1)
- O_cyan
- ベストアンサー率59% (745/1260)
#1の方が指摘してますが・・ 商品マスタのテーブル名は合っていますよね。オブジェクト・・が見つかりませんのメッセージはオブジェクト名がないということなのですが・・。 商品テーブルが正しいとして。 DoCmd.TransferSpreadsheet acExport,acSpreadsheetTypeExcel9, "商品マスタ", "書き出しファイル名", False, "" で行けませんか。 書き出しファイル名はフルパスとファイル名が必要です。
お礼
回答ありがとうございます。 Docmd.OutputToは知りませんでした。ヘルプで調べてみます!