- ベストアンサー
WORDの時間経過後、自動終了
職場の共有フォルダーに入っているdosファイルを、開けたまま席を離れ、他の人が使えません。 EXCELでは、時間が経つと終了できるマクロを組むことが出来ますが、ワードにはそのようなマクロはできないのでしょうか? ネットを探しても、イマイチ出ないため質問させていただきます。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
> 真ん中のCall Timerの色が変わり、ストップします。 > どのような自体なのでしょうか? マクロ(VBE)はある程度ご存じということで話を進めていいんですよね? とりあえず添付図のように、 ・ThisDocumentモジュールに、短い方 ・標準モジュールのModule 1に長い方 それぞれ書いて、お試しくださいませ。 それでも出来なかったら、 Private Sub Document_Open() Dim intTime As String Dim varTime As Variant intTime = "00:00:05" '動作までの時間を指定 varTime = Now + TimeValue(intTime) '処理開始時間を計算 Application.OnTime When:=varTime, Name:="Alert" '処理開始時間になったら"Sub Alert"を処理 End Sub Sub Alert() Dim intMB As Integer intMB = MsgBox(Format(TimeValue("00:00:05"), "s") & "秒経過", vbOKOnly + vbExclamation) End Sub コレをThisDocumentモジュールに貼り付けて、標準モジュールは全て消して、お試しくださいませ。
その他の回答 (2)
- tsubuyuki
- ベストアンサー率45% (699/1545)
> 開くと、ここでコンパイルエラー プロパティの使い方が不正ですとでます。 > 私のマクロへの貼り付けがいけないのでしょうか。 すいません。私のスペリングミスです。 Application.OnTime When:=varTime, Name:="Alert" '処理開始時間になったら"Sub 「valTime」→「varTime」に書き直してください。(エルとアールの違いです) > また、2003でも同じ結果が得られるのでしょうか? 確認しました。 問題なく、出来ます。
補足
何度もご教授ありがとうございます。 職場のPCが2003なので自宅でも試したのですが、 Private Sub Document_Open() Call Timer End Sub 真ん中のCall Timerの色が変わり、ストップします。 どのような自体なのでしょうか?
- tsubuyuki
- ベストアンサー率45% (699/1545)
MS-Word2010で動作確認しました。 以下、標準モジュールへ。 Option Explicit Public intTime As String Public varTime As Variant Sub Timer() intTime = "00:00:05" '動作までの時間を指定 varTime = Now + TimeValue(intTime) '処理開始時間を計算 Application.OnTime When:=valTime, Name:="Alert" '処理開始時間になったら"Sub Alert"を処理 End Sub Sub Alert() Dim intMB As Integer intMB = MsgBox(Format(TimeValue("00:00:05"), "s") & "秒経過", vbOKOnly + vbExclamation) End Sub 及び、以下をThisDocumentモジュールへ。 Private Sub Document_Open() Call Timer End Sub このまま動かすと、ドキュメントを開いて5秒後にメッセージが出ます。 応用なさってくださいませ。
補足
Private Sub Document_Open() Call Timer End Sub 開くと、ここでコンパイルエラー プロパティの使い方が不正ですとでます。 私のマクロへの貼り付けがいけないのでしょうか。 また、2003でも同じ結果が得られるのでしょうか? お忙しいところ回答いただきありがとうございます。 申し訳ありませんが、今一度ご教授願えませんでしょうか。
補足
ActiveDocument.Close SaveChanges:=wdSaveChanges Application.Quit alertを上記に書き換えたら、自動で保存して終了してくれました。 お騒がして申し訳ありません。 何度もご丁寧に教えていただきありがとうございました。