• ベストアンサー

時間がたつと自動的に消えるメッセージが消えない

Excelのマクロで時間がたつと自動的に消えるメッセージを出すようにしていたのですが、Excel2003では正常に動作していたものが、Excel2010ではOKボタンをクリックしないと消えなくなってしまいました。マクロは下記の通りです。どうしたらExcel2010でも時間がたったら消えるようになるでしょうか?御存じの方がおられましたら教えてください。よろしくお願いいたします。 WSH01.Popup MSG, 1, "すぐ消えるMsgbox", vbInformation

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

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

こんにちは。 コードを試してみましたが、消えたり消えなかったりです。 もともと、2003でも、「Popup,Msg 1」の秒数は、不安定でしたね。 あまり良い方法とは言えませんが、Win32 APIを使う方法があります。 '// Private Declare Function MessageBoxTimeoutA Lib "user32" _ (ByVal hWnd As Long, _  ByVal lpText As String, _  ByVal lpCaption As String, _  ByVal uType As Long, _  ByVal wLanguageId As Long, _  ByVal dwMilliseconds As Long) As Long Sub Test2()  MessageBoxTimeoutA 0&, "このまま触る必要ありません。", "自動的に閉じる", vbMsgBoxSetForeground, 0, 1000 '1000は、1秒のこと End Sub

isojiro
質問者

お礼

ありがとうございます。やってみたら上手くいきました。助かりました。マクロ初心者なので、Win32 API(?)の事は知りませんでしたが、これから徐々に勉強していこうと思います。ありがとうございました。

関連するQ&A