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

インポートの際にエラーテーブルが出来たら削除したいのですが、うまくいきません。

マクロでオブジェクトの削除でテーブルを指定すると、エラーテーブルが作成されなかったときにエラーになってしまいます。

VBAを作成し、プロシージャの実行で下記のファンクションを呼び出すと
【指定した式にMicrosoft Accessが見つけることのできない関数が含まれています】というエラーになります。
Public Function 削除()
On Error Resume Next
DoCmd.DeleteObject acTable, "TableA_インポート エラー"
End Function

できればVBAを使わずに「テーブルがあれば削除、なければなにもしない」というのを行いたいのですが、良い方法はないでしょうか?
よろしくお願い致します。

A 回答 (1件)

マクロなら


条件に
DlookUp("Name","MSysObjects","name='TableA_インポート エラー'") <> Null
アクションにオブジェクトの削除で出来ると思います。

「条件」はマクロのデザインビューで、メニュー → 表示で。
MSysObjects はAccessのシステムテーブルです。

指定した式にMicrosoft Accessが見つけることのできない関数が含まれています
これはVBEの画面で参照設定をみて
不可 となっているものが無いか確認されては?
    • good
    • 0
この回答へのお礼

ありがとうございます。
無事に出来ました!!

VBAの方は参照設定も見たのですが、分かりませんでした。
が、ためしにFunctionの名前をDelと、英語に変えてみたらなぜか動きました。
削除、という漢字がいけなかったみたいです…。

条件のつけ方が分かり、非常に勉強になったので感謝感激です。
ありがとうございました。

お礼日時:2006/08/02 17:34

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

このQ&Aを見た人はこんなQ&Aも見ています