有沒有想過,當你有一個Excel工作表,需要它的名稱固定,不希望随便更改。
這個場景是十分有必要的,因為在一些編程過程中,會預設一些固定名稱的表來對編程過程進行使用。
而這些表名一旦被更改,程序就進入了一個無法運行的狀态。
如此情況之下,固定表名就顯得十分必要了。
下面就介紹一下,如何讓表名始終固定為一個名稱不變的處理方法。
No.2全部代碼如下圖所示:
這裡用到了一些事件,包括工作表Worksheet和工作薄WorkBook中的事件,具體是哪些事件下面詳細介紹。
其中,還用到了一個模塊編碼。
分别說明
第一步:定義常量
如上圖為模塊的代碼,插入一個常用模塊,将如下代碼寫入模塊中。
其含義為,定義一個常量Sname,也就是固定的表名,值可以是任意字符串,字符串要符合Excel工作表名稱規則。
第二步:WorkBook事件
将上圖代碼寫入WorkBook_BeforeClose事件當中。
意義為:當工作薄關閉前觸發事件,執行代碼。
代碼内容為判斷Sheet(1)的名稱是否為,模塊中定義的名稱,如果不是,就更改為模塊定義的工作表名稱,保存工作表,然後才退出工作薄。
第三步:WorkSheet事件
工作表事件涉及兩個:
兩個事件中的代碼相同,都是對工作表名稱進行判斷和修改。
第1個事件Deactivate是當工作表失去焦點時觸發,也就是當離開這個工作表或選擇其它工作表時觸發的事件。
第2個事件SelectionChange,很明顯是當工作表單元格改變選擇的時候觸發,也就是當你單擊另一個單元格的時候觸發。
No.3隻需要将代碼寫到指定的位置,那麼防止修改工作表名稱的功能就實現了。
本節内容當中,代碼的應用很少,重點在于對不同的事件要有清晰的認識。
要分清工作薄和工作表分别指什麼意義。
還有一點對模塊的了解。
為什麼要把常量寫到模塊裡而不是寫到工作表或工作薄代碼段裡?
其實,寫進工作表代碼段也可以使用,但是出于對代碼的精簡,這樣寫更好一點。
---END---
歡迎關注、收藏。
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!