Access (VBA)

Access VBAに関するフォーラムです。
  • 解決済みのトピックにはコメントできません。
このトピックは解決済みです。
質問

 
(Windows 10 Home : Access 2016)
マクロでVBAの起動ができない
投稿日時: 21/09/02 22:18:39
投稿者: yurappy

お世話になります。
マクロでVBAの起動ができなくて悩んでおります。
 
 
マクロの「プロシージャの実行」で、モジュールに書いたVBAを起動しようとすると、以下のようなエラーが表示されます。
 
 
 
エラー表示の文章
 
 指定した式に、Microsoft Access が見つけることができない関数名が含まれています。
 
 指定した式に、「アプリケーション タイトル」 が見つけることができない関数名が含まれています。
 
そして、エラー番号が 2425 と表示されます。
 
 
 
ネットで調べると、プロシージャ名に日本語が含まれているとエラ-になるとの事で、半角英字の名称にしていても同様で、アプリケーション タイトルやファイル名も半角英字に変更しても同様でした。
 
また、プロシージャ名とモジュール名が同じだとエラーになるとのことで、異なるようにしてファイル名などもすべて異なる名称にしてもエラーになりました。
 
 
そして、エラー表示の文章にアプリケーション タイトルが含まれ、アプリケーション タイトルを設定しないと Microsoft Access が・・・ と表示されます。
 
ネットで、いろいろと調べても原因がわからず、悩んでおります。
 
何か、原因になるような事をご存知の方がいらしたら、対策方法を教えてください。
 
お願いいたします。

回答
投稿日時: 21/09/03 13:26:18
投稿者: hatena
投稿者のウェブサイトに移動

プロシージャは Function にしてますか。
Subプロシージャだとマクロから参照できません。
 
あと、
「プロシーシャの実行」コマンドの「プロシージャ名」はプロシージャ名の後に () が必要ですが、つけてますか。
 
例えば、標準モジュールに下記のようなプロシージャがあったとして、
 

Public Function Proc1()

    MsgBox "Proc1を実行"

End Function

 
マクロでは、下記のような設定になります。
 
コマンド プロシージャの実行
引数 プロシージャ名 Proc1()

投稿日時: 21/09/03 17:50:58
投稿者: yurappy

hatena樣
 
お世話になります。
ご親切にありがとうございます。
 
 
 

引用:
プロシージャは Function にしてますか。

 
 
Functionを知らずにSubにしていたため、修正をしたら無事に動作いたしました。
 
勉強不足で、お手数をおかけしてすみませんでした。
 
おかげさまで、先に進めそうです。
ありがとうございました。
 
 
また困った時には助けてくださいませ。
 
ありがとうございました。