對于熟悉Excel對象模型的人來說,也許會覺得到目前為止所的內容都太小兒科了。確實,我也有這種感覺。解這些基礎的東西對于有一定Excel VBA編程功底的人來說,太枯燥了!所以,多些圖文,多些趣味,趕走枯燥。
同時,既然是完整的系列文章,我還是得從最簡單的東西開始,基于不熟悉Excel VBA的朋友,從基本的知識點解,由淺入深,慢慢地讓他們在無形中就會步入Excel VBA編程技術的殿堂。
另一方面,作為一個完整的系列,也應該從基礎起,慢慢地開始涉及到更深入更實際的知識和實踐。這會給熟悉Excel VBA的朋友帶來一個完整的框架,為他們理清思路的同時,也會給他們帶來原來忽視的東西。
隨著系列的深入,后面會越來越精彩!
下面繼續(xù)解上一節(jié)中未完的內容:Excel VBA編程中常常使用的那些對象到底是什么,如何在代碼中表示它們。
Worksheet對象
Worksheet對象代表工作表。工作簿中的每個工作表都是一個Worksheet對象,所有Worksheet對象構成了Worksheets集合。
我們使用下面的這一張圖來完整解析Worksheet對象,如下所示。
工作表的名稱
如所示,上面是Excel主界面,下面是VBE界面。新建工作簿后,Excel為我們提供了1-3個默認工作表(Excel 2013中默認為1個工作表)。工作表名稱默認為Sheet1、Sheet2、Sheet3。我們可以在Excel中更改工作表的名稱,例如中在工作表名稱中雙擊,將默認的名為“Sheet1”的工作表改名為“ Excel”。
再看看VBE界面,在左側的工程資源管理器的“Microsoft Excel對象”文件夾下,Excel有幾個工作表,就會有幾個相對應的工作表代碼模塊,中是3個。在代碼模塊標識中,例如Sheet1( Excel),左側的“Sheet1”是相應工作表的對象名稱,右側括號中的“ Excel”是工作表名稱,也就是我們在Excel主界面工作表標簽中看到的名稱。
也就是說,一個工作表有兩個名稱,一個稱為“工作表名”,在Excel主界面中可以看到和修改;另一個稱為“工作表對象名”,只能在VBE界面中看到,也可以在VBE中修改。
如何在代碼中表示某工作表
按照前一篇文章中歸納出來的公式,要表示某工作表,一般只需要在Worksheets集合中指定工作表名稱或索引號即可,例如要在代碼中指定“ Excel”工作表,可以:
1、使用工作表名稱:
Worksheets(“ Excel”)
2、使用工作表索引:
Worksheets(1)
此外,由于工作表還有一個對象名稱,因此還可以使用其對象名來指定“ Excel”工作表,即:
3、使用工作表對象名:
Sheet1
ActiveSheet屬性
ActiveSheet屬性是Workbook對象的一個屬性。使用ActiveSheet屬性可以獲取代表當前正在使用的工作表對象。