Excel (VBA)

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

 
(Windows 10 Home : Excel 2013)
「名前が適切ではありません」と表示されてしまう
投稿日時: 20/12/24 22:03:57
投稿者: enjin2000

このページ(https://e-vba.com/ontime/)にあるソース「12時になったらメッセージボックスを表示するプログラム」を私のEXCELで動かしてみたのですが
 

Sub OnTime()

Application.OnTime TimeValue("12:00:00"), "sample"

End Sub
Sub sample()

MsgBox "お昼ですよ〜"

End Sub

 
名前が適切ではありません」と表示されてしまうのです。
 
原因がわかりません。皆さんのお知恵を貸してください。

回答
投稿日時: 20/12/24 22:57:56
投稿者: よろずや

提示されたサイトには、サンプルが2つあります。
 
両方をコピペすると、同じ名前のプロシージャが2つできます。
 
この場合、「名前が適切ではありません」と表示されます。

投稿日時: 20/12/24 23:32:13
投稿者: enjin2000

よろずや さんの引用:
提示されたサイトには、サンプルが2つあります。
 
両方をコピペすると、同じ名前のプロシージャが2つできます。
 
この場合、「名前が適切ではありません」と表示されます。

 
うーん、それは最初に考えたことですが、「sample」とあるのを「sample_A」にしたり「sampl」にしたりしたらしっかり稼働するのです。「Sub sample()」のほうも同様に変更して、です。
 
どうしてこうなるのかわかりません。

回答
投稿日時: 20/12/25 11:26:06
投稿者: mattuwan44

どうしてこうなるのかわかりません。
同じ名前のプロシージャが複数存在するから、名前が適切ではないということですよね?
 
当然、名前を変えたら動くと思います。
まー、名前を変えて動くなら、あまり深く考えなくてもよいような気がします。
何かの関係で書いたり消したりした情報が上手く判断されてないのかもしれませんが、
原因を特定するのは難しいかも知れません。
 
一回ファイルを保存してみたりしたら、よいかも知れませんね。

投稿日時: 20/12/31 12:57:11
投稿者: enjin2000

返信ありがとうございます。
 
複数の標準モジュールを使っていて、そちらで「sample」をsub名として使っていたからのようでした。