こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

VBA 制限時間を、一時停止させたい

Excel VBAでの質問です。Excel2007使用です。
ユーザーフォームに制限時間と、制限時間を一時停止させるコマンドボタンを作りたいです。制限時間(60分)は、下ので実行できたのですが、一時停止ができるか、わかりません。

Private Sub 制限時間_Click()
Dim myTime As Date
Dim myLImit As Date
myLImit = Now + TimeValue("1:00:00")
Do While myLImit > Now
DoEvents
myTime = myLImit - Now
分表示.Caption = Minute(myTime) & "分"
秒表示.Caption = Second(myTime) & "秒"
Loop
msgbox "終了です。"
Unload Me
End Sub

できれば、ボタンを押すとmsgbox"一時停止"を表示させ、表示させている間は、制限時間を一時停止させたいです。制限時間、一時停止ができれば、違うコードでもかまいません。
どうぞよろしくお願いします。

投稿日時 - 2008-12-03 04:54:03

QNo.4525766

困ってます

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

時間を一時的に止めるだけでしたら、以下のコードで行うことができると思います。
Private diffTime As Date
Private Sub Command1_Click()
Dim StartTime As Date
StartTime = Now
MsgBox "一時停止"
diffTime = Now - StartTime
End Sub

Private Sub 制限時間_Click()
Dim myTime As Date
Dim myLImit As Date
myLImit = Now + TimeValue("1:00:00")
Do While myLImit > Now
DoEvents
myLImit = myLImit + diffTime
myTime = myLImit - Now
diffTime = 0
分表示.Caption = Minute(myTime) & "分"
秒表示.Caption = Second(myTime) & "秒"
Loop
MsgBox "終了です。"
Unload Me
End Sub

投稿日時 - 2008-12-03 11:48:48

お礼

回答ありがとうございます。
無事に制限時間、一時停止ができました。
ありがとうございました。とても助かりました。

投稿日時 - 2008-12-04 12:33:54

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)

あなたにオススメの質問