|
▼SS さん:
どうもありがとうございます。
SSさんが御作りなられたマクロは、不完全です。
エクセルを閉じる実行マクロが入っておりません。
ご協力ありがとうございました。
>▼初心者 さん:
>
>こんにちは、興味があったのでこんなの組んでみました。
>Excelを閉じる時にSetTimerEndを実行します。
>要求内容満たしていますか?試してみて下さい。
>
>Option Explicit
>
>Public TimeS As Variant
>
>Sub SetTimerStart()
> TimeS = Now + TimeValue("00:00:05")
> Application.OnTime TimeS, "closeme"
>End Sub
>
>Sub SetTimerEnd()
> Application.OnTime EarliestTime:=TimeS, _
> Procedure:="closeme", Schedule:=False
>End Sub
>
>Sub closeme()
> MsgBox "Now"
>End Sub
>
>
>>エクセルを開いてから5分後にエクセルを終了させるマクロを作成しました。
>>5分後に強制(自動保存あり)で閉じることは可能になったんですが・・・
>>
>>5分以内にエクセルを閉じる(手動で)と、アプリケーションが内部で動いているため、マクロが起動します(5分後にマクロが開き、閉じるアクションをするため)
>>
>>ここまでは分かっているのですが、具体的対策ができません。
>>下記に私が書いたVBAを貼り付けます。
>>
>>お知恵をお貸し頂けないでしょうか。お願いします。
>>
>>
>>〜ThisWorkbook〜
>>
>>Private Sub Workbook_Open()
>> Operated = False
>> SetTimer
>>End Sub
>>
>>Public Operated As Boolean
>>
>>
>>Sub SetTimer()
>> Application.OnTime Now + TimeValue("00:05:00"), "closeme"
>>End Sub
>>
>>
>>〜Module1〜
>>
>>Sub CloseMe()
>>
>> ActiveWorkbook.Save
>> Workbooks("○○○.xls").Saved = True
>>
>>
>> Workbooks("○○○.xls").Close False
>>
>>End Sub
>>
>>Private Sub Workbook_BeforeClose(Cancel As Boolean)
>> ’エクセルを閉じる前の処理
>>
>> Application.OnTime Now, SetTimer, schedule:=False
>>
>>
>>End Sub
|
|