Excel里使用定時(shí)器的方法

2021-12-08 11:58 更新

如果您從事人事管理工作,有近百員工需要進(jìn)行生日福利管理,那么,就得經(jīng)常翻閱“員工花名冊”來尋找“馬上要過生日”的員工——實(shí)在是太麻煩了!用Excel建立一本“員工生日記錄”是不是方便得多?下面來列舉一些例子來進(jìn)行說明。


你有用過 Excel 97 里的加載宏 "定時(shí)保存" 嗎?可惜它的源程序是加密的,那么現(xiàn)在就上傳一篇介紹實(shí)現(xiàn)它的文檔。


在 Office 里有個(gè)方法是 application.ontime ,具體函數(shù)如下:



expression.OnTime(EarliestTime, Procedure, LatestTime, Schedule)

如果想進(jìn)一步了解,請參閱 Excel 的幫助。


這個(gè)函數(shù)是用來安排一個(gè)過程在將來的特定時(shí)間運(yùn)行,(可為某個(gè)日期的指定時(shí)間,也可為指定的時(shí)間段之后)。通過這個(gè)函數(shù)我們就可以在 Excel 里編寫自己的定時(shí)程序了。下面就舉兩個(gè)例子來說明它。




1.在下午 17:00:00 的時(shí)候顯示一個(gè)對話框

Sub Run_it()


Application.OnTime TimeValue("17:00:00"), "Show_my_msg"


'設(shè)置定時(shí)器在 17:00:00 激活,激活后運(yùn)行 Show_my_msg 。


End Sub


Sub Show_my_msg()


msg = MsgBox("現(xiàn)在是 17:00:00 !", vbInformation, "自定義信息")


End Sub


2.模仿 Excel 97 里的 "自動(dòng)保存宏",在這里定時(shí) 5 秒出現(xiàn)一次

Sub auto_open()


MsgBox "歡迎你,在這篇文檔里,每 5 秒出現(xiàn)一次保存的提示!", vbInformation, "請注意!


"


Call runtimer '打開文檔時(shí)自動(dòng)運(yùn)行


End Sub


Sub runtimer()


Application.OnTime Now + TimeValue("00:00:05"), "saveit"


' Now + TimeValue("00:15:00") 指定在當(dāng)前時(shí)間過 5 秒鐘開始運(yùn)行 Saveit 這個(gè)過程。


End Sub


Sub SaveIt()


msg = MsgBox("朋友,你已經(jīng)工作很久了,現(xiàn)在就存盤嗎?" & Chr(13) _


& "選擇是:立刻存盤" & Chr(13) _


& "選擇否:暫不存盤" & Chr(13) _


& "選擇取消:不再出現(xiàn)這個(gè)提示", vbYesNoCancel + 64, "休息一會(huì)吧!")


'提示用戶保存當(dāng)前活動(dòng)文檔。


If msg = vbYes Then ActiveWorkbook.Save Else If msg = vbCancel Then Exit Sub

Call runtimer '如果用戶沒有選擇取消就再次調(diào)用 Runtimer


End Sub


以上只是兩個(gè)簡單的例子,有興趣的話,可以利用 Application.Ontime 這個(gè)函數(shù)寫出更多更有用的定時(shí)程序。

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號