dポイントプレゼントキャンペーン実施中!

こんにちは。
AccessVBAについて質問させてください。
私は今商品マスタを操作するためのシステムを作っています。
私が実現したい機能はこのようなものです。
まず「マスタ開く」ボタンで商品マスタを元にした「商品マスタフォーム」を開きます。
そのフォームの中に「書き出し」というボタンを作成し、そのボタンを
クリックすると、フォームの中のデータがExcelデータとして表示されるようにしたいのです。
「TransferSpreadsheet」を使用するところまではわかっているのですが、どうもうまくいきません。
エクスポート元のテーブル名(商品マスタ)と指定するのですが、
「オブジェクト"商品マスタ"が見つかりませんでした。名前やパス名が正しいことを確認してください」とでます。
私が書いたソースはこれです↓
DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, "商品マスタ",, True
どこがおかしいのかご教授お願いします。

A 回答 (2件)

第4引数 FileName が指定されていないようですね。


第4引数に、出力先の Excel ワークブックのパス(とファイル名)を
指定する必要があります。
もっとも、それが抜けている場合は別のエラーメッセージが出るはずなので、
本当にそれだけが原因なのかどうか、確信はありませんが。

あと、もし出力先をユーザーに指定させたいのであれば、DoCmd.OutputTo が
使えます。これは出力先パスを省略すると、ダイアログが出てきます。
ヘルプに詳しい解説と使用例が載っています。
それでは。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
Docmd.OutputToは知りませんでした。ヘルプで調べてみます!

お礼日時:2006/10/24 09:30

#1の方が指摘してますが・・


商品マスタのテーブル名は合っていますよね。オブジェクト・・が見つかりませんのメッセージはオブジェクト名がないということなのですが・・。
商品テーブルが正しいとして。
DoCmd.TransferSpreadsheet acExport,acSpreadsheetTypeExcel9, "商品マスタ", "書き出しファイル名", False, ""
で行けませんか。
書き出しファイル名はフルパスとファイル名が必要です。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す