學(xué)習(xí)啦>學(xué)習(xí)電腦>工具軟件>辦公軟件學(xué)習(xí)>Excel教程>Excel基礎(chǔ)>

excel2003利用vba制作倒計(jì)時(shí)器的教程

時(shí)間: 業(yè)華773 分享

  在Excel中錄入好數(shù)據(jù)以后可能經(jīng)常需要用到計(jì)時(shí)器這個(gè)功能,這個(gè)功能制作起來(lái)可能有點(diǎn)困難,如果有需要的朋友可以學(xué)習(xí)一下。下面是由學(xué)習(xí)啦小編分享的excel2003利用vba制作倒計(jì)時(shí)器的教程,供大家閱讀、學(xué)習(xí)。

  excel2003利用vba制作倒計(jì)時(shí)器的教程:

  制作計(jì)時(shí)器步驟1:在EXCEL窗口中按上圖的樣式做一個(gè)界面,設(shè)置你喜歡的字體大小與顏色邊框。由于是用VBA代碼制作計(jì)時(shí)部份,所以表格中不用輸入任何公式。

  制作計(jì)時(shí)器步驟2:按ALT+F11組合鍵調(diào)出VBA窗口,按“插入-模塊”,出現(xiàn)一個(gè)空白的模塊窗口,把下面代碼粘貼進(jìn)去。

  Dim n '公用變量,記住下一個(gè)任務(wù)執(zhí)行的時(shí)間

  Dim a '開始時(shí)間

  Dim b '結(jié)束時(shí)間

  Sub 計(jì)時(shí)()

  n = Now + TimeValue("00:00:01") '設(shè)定時(shí)間間隔為一秒

  If Now() > b Then MsgBox "倒計(jì)時(shí)結(jié)束": Call 停止: Exit Sub

  [c4] = Format(b - Now(), "h:mm:ss") '設(shè)置單元格格式

  Application.OnTime n, "計(jì)時(shí)" '到指定時(shí)間后再執(zhí)行本過程

  End Sub

  Sub 開始()

  [c2] = Format([c2], "h:mm:ss") '設(shè)置單元格格式

  a = [c2] '設(shè)定時(shí)間

  b = Now() + a '計(jì)算結(jié)束時(shí)間

  [c3] = Format(b, "yyyy-m-d h:mm:ss") '設(shè)置單元格格式

  Call 計(jì)時(shí)

  End Sub

  Sub 停止()

  On Error Resume Next

  Application.OnTime n, "計(jì)時(shí)", , False '停止任務(wù)的執(zhí)行

  End Sub

  這組代碼由四部份組成:

  第一部份(最上面三行)是聲名公共變量,使這幾個(gè)變量在下面各過程中都可調(diào)用。

  第二部份是“Sub 計(jì)時(shí)”,也是主代碼,它負(fù)責(zé)不停的計(jì)時(shí)并顯示剩余時(shí)間。

  第三部份“Sub 開始”,相當(dāng)于初始化部份,設(shè)置單元格格式及顯示“計(jì)時(shí)結(jié)束時(shí)間”,在這個(gè)部份會(huì)調(diào)用“Sub 計(jì)時(shí)”過程來(lái)進(jìn)行倒計(jì)時(shí)。

  第四部份“Sub 停止”,終止倒計(jì)時(shí)過程。

  代碼中的關(guān)鍵部份是“sub 計(jì)時(shí)”,它使用onTime函數(shù)實(shí)現(xiàn)自動(dòng)計(jì)時(shí)功能。

  常用語(yǔ)法:

  Application.OnTime 時(shí)間,要運(yùn)行的過程名

  在上例中,“Application.OnTime n, "計(jì)時(shí)"”的含義是到下一個(gè)時(shí)間“n”,就執(zhí)行一次名為“計(jì)時(shí)”(即 “sub 計(jì)時(shí)”自身)的代碼。

  時(shí)間“n”由語(yǔ)句“ n = Now + TimeValue("00:00:01")”計(jì)算得出,表示由當(dāng)前時(shí)間(即“NOW”)加上一個(gè)1秒的時(shí)間值。

  在“Sub 停止”過程中,也使用了OnTime函數(shù),但它多了一個(gè)參數(shù)False ,它的作用是到時(shí)間“n”后,停止過程“Sub 計(jì)時(shí)”的執(zhí)行(即計(jì)時(shí)結(jié)束)。

  其他語(yǔ)句部份比較容易理解,可參考各語(yǔ)句后面的注釋。

  制作計(jì)時(shí)器步驟3:添加按鈕

  為了方便執(zhí)行,需要在EXCEL窗口添加兩個(gè)按鈕,一個(gè)“開始”,另一個(gè)是“結(jié)束”。

  在EXCEL窗口中按“視圖-工具欄-窗體”,調(diào)出“窗體”工具欄,用鼠標(biāo)選中上面的“按鈕”控件在C列的右邊“畫”出兩個(gè)大小適中的按鈕,再用鼠標(biāo)右鍵分別點(diǎn)擊按鈕,選“編輯文字”,第一按鈕輸入“開始”,第二個(gè)按鈕輸入“停止”。

  接下來(lái)還要給按鈕指定要運(yùn)行的宏(就是在VBA窗口中的代碼)

  在“開始”按鈕上點(diǎn)右鍵,選“指定宏”,在彈出的窗口中選“開始”后確定。同樣方法給“停止”按鈕指定“停止”宏。

  這樣就完成了整個(gè)制作過程,可以使用了。

  在C2單元格中輸入一個(gè)時(shí)間(格式為“時(shí):分:秒”),點(diǎn)擊按鈕“開始”就能看到在C3格中出現(xiàn)一個(gè)計(jì)時(shí)結(jié)束的時(shí)間,同時(shí)在C4格出現(xiàn)以一秒為間隔不斷遞減的時(shí)間數(shù)字,當(dāng)C4單元格顯示為0時(shí)彈出提示窗口,計(jì)時(shí)結(jié)束。

659028