通過(guò)前面兩篇文章的學(xué)習(xí),,我們已經(jīng)了解了Excel VBA的變量,知道了如何給變量賦值,。下面,,我們?cè)敿?xì)談?wù)?/span>Excel中很重要的對(duì)象變量。
變量除了可以表示數(shù)值,、字符串等外,,還可以表示一個(gè)工作簿,、一張工作表、一個(gè)單元格,,這就是對(duì)象變量(Object類型的變量),。
聲明對(duì)象變量 對(duì)象變量的聲明沒(méi)有什么特殊之處,仍然是使用Dim語(yǔ)句或者Public語(yǔ)句,。下圖1是一些常用的對(duì)象聲明示例: 圖1 注意:當(dāng)我們不知道對(duì)象變量的具體類型時(shí),,可以將其聲明為通用的Object類型。
給對(duì)象變量賦值 對(duì)象變量的賦值與普通變量的賦值不同,,必須使用關(guān)鍵字Set,。 例如,使用下面的語(yǔ)句將變量rng聲明為Range對(duì)象: Dim rng As Range 然后,,使用下面的語(yǔ)句給變量rng賦值: Set rng = Worksheets('Sheet1').Range('A1:B2') 現(xiàn)在,,我們就可以使用變量rng來(lái)代表工作表Sheet1中的單元格區(qū)域A1:B2。 此時(shí),,再運(yùn)行代碼: rng.Value = '示例' 將在單元格區(qū)域A1:B2中輸入“示例”文本,,如圖2所示。 圖2
注意:在給對(duì)象變量賦值時(shí),,一定要加上關(guān)鍵字Set,。很多代碼錯(cuò)誤往往就是在給對(duì)象變量賦值時(shí)沒(méi)有使用Set。 給對(duì)象變量賦值的通用結(jié)構(gòu)為: Set 對(duì)象變量名= 對(duì)象
使用對(duì)象變量的好處 仍然使用上面給單元格區(qū)域A1:B2輸入文本“示例”的例子,。如果不使用對(duì)象變量,,那么將使用下面的代碼來(lái)操作該區(qū)域: Sub test() Worksheets('Sheet1').Range('A1:B2').Value = '示例' Worksheets('Sheet1').Range('A1:B2').Font.Bold = True Worksheets('Sheet1').Range('A1:B2').Font.Size = 19 Worksheets('Sheet1').Range('A1:B2').Interior.Color =vbYellow End Sub 該段代碼首先在工作表Sheet1的單元格區(qū)域A1:B2中輸入文本“示例”,然后將字體加粗,,字號(hào)大小調(diào)整為19號(hào),,將單元格背景色設(shè)置為黃色。
讓我們?cè)賮?lái)看看使用對(duì)象變量達(dá)到同樣效果的代碼: Sub testUpdate() Dim rng As Range
Set rng =Worksheets('Sheet1').Range('A1:B2')
rng.Value = '示例' rng.Font.Bold = True rng.Font.Size = 19 rng.Interior.Color = vbYellow End Sub 代碼顯得更簡(jiǎn)潔,,似乎運(yùn)行的速度也加快了,。因此,我們總結(jié)使用對(duì)象變量的好處有:
Sub CreateNewWorkbook() '聲明工作簿和工作表對(duì)象變量 Dim wb As Workbook Dim wks As Worksheet '創(chuàng)建新的對(duì)象實(shí)例并賦值 Set wb = Workbooks.Add Set wks =wb.Worksheets('Sheet1') '對(duì)工作表進(jìn)行操作 wks.Name = '我的工作表' '重命名工作表 wks.Range('A1')= 'Test' '給工作表中的單元格A1填充值 End Sub |
|
來(lái)自: L羅樂(lè) > 《全民學(xué)VBA》