Worksheet的Change事件 “事件”在前面的貼子里我們已經接觸過了,如果你還不清楚,回過頭去花上幾分鐘看一看。
當工作表單元格數值被修改后,就會觸發(fā)Worksheet的Change事件,我們可以通過寫一些語句響應這個事件來完成一些工作,下面我們通過一些例子來認識它。 打開一個工作薄,點擊工作表名稱標簽,選擇“查看代碼”命令進入VBE編輯窗口,在代碼窗口的對象列表中選擇“Worksheet”,在事件列表中選擇“Change”,這時代碼窗口中會出現一段代碼: 復制內容到剪貼板
相關說明:代碼:Private Sub Worksheet_Change(ByVal Target As Range) 1、Worksheet是對象名,Change是事件名稱,對象名稱和事件名稱用下劃線連接; ?。?、(ByVal Target As Range):括號里的是程序運行傳遞的參數,Target是一個Range對象,即單元格區(qū)域,指觸發(fā)Change事件的單元格,也就是數值被修改了的單元格。 ?。场⑽覀冎恍枰獙⑺枰獔?zhí)行的代碼寫在Sub與End Sub之間,這樣,在工作表的某個單元格發(fā)生改變時,就自動執(zhí)行Sub與End Sub之間的程序代碼。 如果我們需要在每一次單元格修改之后都告訴我們這個單元格的地址是多少,則代碼可以為: 復制內容到剪貼板
這樣,當我們修改了某個單元格后,都會自動彈出一個對話框告訴我們剛剛修改的格的地址是多少。代碼:Private Sub Worksheet_Change(ByVal Target As Range) 如果我們想只有修改某個單元格區(qū)域,比如D列的單元格的時候,才彈出這個對話框告訴我們,也是可以的,那代碼為: 復制內容到剪貼板
有時,為了減少工作表信息的輸入工作,我們會利用到Worksheet的Change事件,例如有一相記錄學生借書或還書情況的工作表,C列2行以下的區(qū)域記錄圖書“借出”或“歸還”的情況,需要在每一次更改“借出”或“歸還”狀態(tài)時,都在同行的D列記錄下更改的日期,則代碼可以為:
代碼:Private Sub Worksheet_Change(ByVal Target As Range) 復制內容到剪貼板
因為工作的原因,很久沒有來了,今天就給大家講這個很簡單的事件,很容易理解。由于時間匆忙,難免有不全面的地方,如有不明白的,希望大家跟貼一起討論,最后,也給大家留一個練習的題目吧!代碼:Private Sub Worksheet_Change(ByVal Target As Range) 相關附件: ?。薄嵗簣D書—自動錄入時間 圖書-自動錄入時間.rar (7.61 KB) ?。病⒆鳂I(yè):信息錄入—一舉兩得 信息錄入—一舉兩得.rar (10.37 KB) |
|
來自: yuxinrong > 《菜鳥談VBA最最基礎入門》