瀏覽量:72次
有沒有想過,當你有一個Excel工作表,需要它的名稱固定,不希望隨便更改。
這個場景是十分有必要的,因為在一些編程過程中,會預(yù)設(shè)一些固定名稱的表來對編程過程進行使用。
而這些表名一旦被更改,程序就進入了一個無法運行的狀態(tài)。
如此情況之下,固定表名就顯得十分必要了。
下面就介紹一下,如何讓表名始終固定為一個名稱不變的處理方法。
全部代碼如下圖所示:
這里用到了一些事件,包括工作表Worksheet和工作薄WorkBook中的事件,具體是哪些事件下面詳細介紹。
其中,還用到了一個模塊編碼。
分別說明
第一步:定義常量
如上圖為模塊的代碼,插入一個常用模塊,將如下代碼寫入模塊中。
其含義為,定義一個常量Sname,也就是固定的表名,值可以是任意字符串,字符串要符合Excel工作表名稱規(guī)則。
第二步:WorkBook事件
將上圖代碼寫入WorkBook_BeforeClose事件當中。
意義為:當工作薄關(guān)閉前觸發(fā)事件,執(zhí)行代碼。
代碼內(nèi)容為判斷Sheet(1)的名稱是否為,模塊中定義的名稱,如果不是,就更改為模塊定義的工作表名稱,保存工作表,然后才退出工作薄。
第三步:WorkSheet事件
工作表事件涉及兩個:
Worksheet_DeactivateWorksheet_SelectionChange兩個事件中的代碼相同,都是對工作表名稱進行判斷和修改。
第1個事件Deactivate是當工作表失去焦點時觸發(fā),也就是當離開這個工作表或選擇其它工作表時觸發(fā)的事件。
第2個事件SelectionChange,很明顯是當工作表單元格改變選擇的時候觸發(fā),也就是當你單擊另一個單元格的時候觸發(fā)。
只需要將代碼寫到指定的位置,那么防止修改工作表名稱的功能就實現(xiàn)了。
本節(jié)內(nèi)容當中,代碼的應(yīng)用很少,重點在于對不同的事件要有清晰的認識。
要分清工作薄和工作表分別指什么意義。
還有一點對模塊的了解。
為什么要把常量寫到模塊里而不是寫到工作表或工作薄代碼段里?
其實,寫進工作表代碼段也可以使用,但是出于對代碼的精簡,這樣寫更好一點。
---END---
歡迎關(guān)注、收藏。
[聲明]本網(wǎng)轉(zhuǎn)載網(wǎng)絡(luò)媒體稿件是為了傳播更多的信息,此類稿件不代表本網(wǎng)觀點,本網(wǎng)不承擔此類稿件侵權(quán)行為的連帶責任。故此,如果您發(fā)現(xiàn)本網(wǎng)站的內(nèi)容侵犯了您的版權(quán),請您的相關(guān)內(nèi)容發(fā)至此郵箱【779898168@qq.com】,我們在確認后,會立即刪除,保證您的版權(quán)。
官網(wǎng)優(yōu)化
整站優(yōu)化
渠道代理
400-655-5776