アプリ版:「スタンプのみでお礼する」機能のリリースについて

VBA でOnTimeの「サンプル」を使ってのタイマーですが、実行すると次のようなエラーが出て、実行マクロへ行けません。

「マクロ"I:\一定時間後に.xls'!実行マクロ名'が見つかりません。」

どうしてなのか教えてください。

Option Explicit
Dim 待ち時間
Dim 指定時刻

Sub 一定の時間間隔でマクロを実行する()

指定時刻 = Now + TimeValue("0時00分05秒") '5秒後
待ち時間 = TimeValue("0時00分01秒")


Application.OnTime TimeValue(指定時刻), "実行マクロ名", TimeValue(待ち時間)

End Sub

Sub 実行マクロ名()
Dim wavfile As String
wavfile = "C:\Windows\Media\ringin.wav " 'wavファイルのパス
Shell "mplay32.exe /play /close " & wavfile

End Sub

A 回答 (2件)

提示のマクロで動作するはずですが


>「マクロ"I:\一定時間後に.xls'!実行マクロ名'が見つかりません。」
と出たとすれば原因は2つ考えられます。

(1)提示したコードと実際実行したコードが違う
   例えば、”実行マクロ名”というマクロ名ではない
(2)コードを書いている場所が、標準モジュールではない
   例えば、Sheet1のシートモジュールとか


ということで、マクロ名が正しいか確認後、次のようにしてください。


1.VBEの画面を開く

2.「挿入」メニュー > 「標準モジュール」と進み、「標準モジュール」を挿入する

3.画面上部のタイトルバーに、「Module1 コード」と表示されてるか確認したあと、
  コードウィンドーに質問のコードをコピー&ペースト

5.VBE画面を閉じて、実行
 

これでちゃんと動作するはずです。
 
    • good
    • 0
この回答へのお礼

標準モジュールで動作させると正常に実行されました。
何日も迷いに迷っていたので実行できて大変うれしく思います。
誠にありがとうございました。

お礼日時:2007/11/04 15:19

これと同じ現象でないか確認を。


http://oshiete1.goo.ne.jp/qa3196717.html

この回答への補足

ご回答ありがとうございました。
VBAはまだ始めたばかりで良く分かりません。
説明の中に
解決策として「Normal.dot にマクロを作成します。 」とは何を意味するのでしょうか?

よろしくお願い致します。

補足日時:2007/11/03 22:19
    • good
    • 0

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

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


このQ&Aを見た人がよく見るQ&A