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

エクセル2010を使っています。


Sub ボタン2 をクリックし、処理が終わったときに、メッセージボックスを出しているのですが、それを数秒後に自動で閉じた後、自動でボタン1をクリックさせたいのですが。

ご存知の方よろしくお願いいたします。



MsgBox "抜き出し終了 "

A 回答 (2件)

#1さんの方法で昔は閉じてくれたような記憶があります。


Excel2010 & Win7(64bit)だと閉じませんね。
もっともループ中などではWscript.POPUP は思ったように
動いてくれません。
すべてのループが終わってから現れたりします ((+_+))

なので別案。
標準モジュールに
Public 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

として
コマンドボタンの方には
Private Sub CommandButton1_Click()
With Application
MessageBoxTimeoutA .hWnd, "5秒後にサヨナラ。", .Name, vbOKOnly, 0&, 5000&
End With
Call ボタン1_Click
End Sub
などとしてみてください。
5000& がミリセカンド単位での秒数指定です。
    • good
    • 2

下記はボタン2クリックでMSGBOXを3秒表示後Sub ボタン1_Click()を呼び出しますVBAの一例です。



Sub ボタン2_Click()

Dim WSH As Object

Set WSH = CreateObject("WScript.Shell")
WSH.Popup "抜き出し終了", 3, "Title", vbInformation
Set WSH = Nothing

Call ボタン1_Click

End Sub


Sub ボタン1_Click()
MsgBox "終了"
End Sub

この回答への補足

駄目ですね。

メッセージボックスが自動で閉じません。


ちなみにCall ボタン1_Clickのみだと 動きますね。


自動で閉じるはあっちこっちのサイトで見て試してるのですが、どれもボックスの表示はするのですが、自動で閉じてくれません。

補足日時:2014/06/12 20:20
    • good
    • 0

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