讀古今文學網 > 別怕,ExcelVBA其實很簡單 > 5.4 別樣的自動化 >

5.4 別樣的自動化

5.4.1 MouseMove事件

當鼠標指針移動到按鈕上時,按鈕迅速閃開。鼠標和按鈕,就像在玩老鷹捉小雞的遊戲。這樣的效果可以用命令按鈕的MouseMove事件實現,如圖5-13所示。

新添加的按鈕,可以通過在【屬性窗口】中設置它的屬性來改變它的外觀樣式,如圖5-14所示。

圖5-13 在工作表中添加一個按鈕

圖5-14 利用屬性窗口設置按鈕的屬性

完成後在按鈕所在工作表的【代碼窗口】中輸入程序,如圖5-15所示。

圖5-15 在代碼窗口中寫入程序

完成後返回工作表區域,在【控件工具箱】中單擊【退出設計模式】按鈕,如圖5-16所示。

圖5-16 退出設計模式完成編輯

完成後就可以用鼠標指針去「抓」按鈕了,試一試,你能把鼠標指針放到按鈕上面嗎?如果按鈕跑遠了,想讓按鈕回到初始位置,就單擊Back按鈕。

在工作表中再添加一個按鈕,命名為「Back」,雙擊按鈕,在代碼窗口中輸入程序:

5.4.2 不是事件的事件

除了對象的事件,Application對像還有兩種方法,可以像事件一樣讓程序自動運行。

Application對象的OnKey方法

OnKey方法告訴Excel,當在鍵盤上按下指定鍵或組合鍵時自動運行程序。

Step 1:進入VBE,新插入一個模塊,在模塊中輸入程序:

Step 2:把需要自動運行的代碼全部寫在單獨的過程Test裡,保存在模塊中:

步驟如圖5-17所示。

圖5-17 輸入程序的步驟

Step 3:運行ok過程,返回工作表區域,按<Shift+E>組合鍵即可自動運行Test過程,如圖5-18所示。

如果想知道還能設置哪些快捷鍵,可以查看OnKey方法的幫助信息,如圖5-19所示。

圖5-18 當按下<Shift+e>後

圖5-19 查看OnKey的幫助信息

Application對象的OnTime方法

OnTime方法告訴Excel,當到指定的時間時自動運行程序(可以是指定的某個時間,也可以是指定的一段時間之後),如圖5-20所示。

Step 1:進入VBE,新插入一個模塊,在模塊中寫入程序。

Step 2:把提醒休息時間的語句寫在另一個程序Test裡,保存在模塊中。

圖5-20 輸入程序的步驟

Step 3:運行oT過程,開始工作,一個小時後Excel會自動運行Test過程,如圖5-21所示。

圖5-21 Excel的溫馨提示