• ベストアンサー
  • 困ってます

Accessのマクロでモジュールを実行させたい。

  • 質問No.601721
  • 閲覧数23824
  • ありがとう数6
  • 気になる数0
  • 回答数4
  • コメント数0

お礼率 84% (257/304)

Access2002を勉強中の初心者です。

AccessでDB1という名前のデータベースを作成し、その中で、モジュール1というモジュールを作成しました。これを実行するマクロを作成したく、次のようにマクロを作成しました。
マクロのデザイン画面でアクションに「プロージャの実行」を選択、プロージャ名入力覧の右側の...のボタンを押して式ビルダ画面を表示、ここの「関数」フォルダを開いてDB1を選択、表示されたモジュール1を貼り付けてOK。
しかし、このマクロを実行すると、次のエラーとなります。「DB1 指定されたDB1が見つけることができない関数名が含まれています」

根本的に方法が間違っているのでしょうか?
アドバイスをよろしくお願いします。

質問者が選んだベストアンサー

  • 回答No.4
  • ベストアンサー

ベストアンサー率 36% (521/1422)

#1です。

ちょっと時間ができたので、Accessのヘルプで、
 "RunCode/プロシージャの実行" アクション
についてのトピックを見てみました。

結論から言うと、基本的な考え方が間違っているみたいです^^;。

「プロシージャの実行」アクションでは、「Function」プロシージャを指定するようです。
Subプロシージャではエラーになります。


つまりご質問の件では、
「Subプロシージャを呼び出すFnctionプロシージャ」をまず書かなけれえばならない。
そして、マクロのアクションでは、あらためてこのFunctionプロシージャを指定しなければいけません。
お礼コメント
haasan99

お礼率 84% (257/304)

happypointさん、お忙しいところいつもありがとうございます。Functionプロシージャをまず書かなければならないですね。早速トライしてみます。ありがとうございました。
投稿日時:2003/07/16 16:04

その他の回答 (全3件)

  • 回答No.3

ベストアンサー率 60% (310/514)

マクロからプロシージャの実行に関する基本的な考えは間違っていないと思います。

あなたが実行したいプロシージャが、例えば

Public Function test()

MsgBox "hello!"

End Function

ならば、マクロの[プロシージャ名]には
“ test() ”
と、“()”も入力しなければなりません。でないと#2さんのお返事に書かれたエラーになります。

式ビルダも便利ですが、わたしなんかはモジュール画面からコピー&ペーストしてしまいますね、普段は。
補足コメント
haasan99

お礼率 84% (257/304)

ご回答ありがとうございます。
おっしゃるとおり()もつけてみたのですが、質問の「・・・含まれていません」のエラーが出ます。
なにか間違えていると思いますので、調べてみます。
投稿日時:2003/07/16 08:27
お礼コメント
haasan99

お礼率 84% (257/304)

ご回答ありがとうございました。
投稿日時:2003/07/17 08:03
  • 回答No.2

ベストアンサー率 35% (19/53)

#1さんと同意見ですが。

文章を読むとモジュール1をプロシージャ名として設定
しているように見えますが、プロシージャ名を指定し
てください。
こんなん↓なら プロシージャ aaa です

Public Sub aaa()

End Sub
補足コメント
haasan99

お礼率 84% (257/304)

アドバイスありがとうございます。
おっしゃるとおりやっているつもりなのですが、「指定された式に含まれる名前"aaa"が見つかりません」とのエラーが出ます。なにか、私が考え相違しているのでしょうね...
投稿日時:2003/07/15 15:31
お礼コメント
haasan99

お礼率 84% (257/304)

ご回答ありがとうございました。
もっと勉強します。
投稿日時:2003/07/17 08:03
  • 回答No.1

ベストアンサー率 36% (521/1422)

こんにちは。

フォームから実行するとかだったら、
直接VBAで呼び出した方が早いと思うんですが、
何故マクロ?

的外れだったらすいません。
補足コメント
haasan99

お礼率 84% (257/304)

説明不足ですみません。
既に作成しているマクロの1行として組み入れたいと思ったものですから・・・
考え方が根本的に外れてますか?
投稿日時:2003/07/15 13:04
結果を報告する
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。
関連するQ&A

その他の関連するQ&Aをキーワードで探す

ピックアップ

ページ先頭へ