Excel97在工作表或圖表上可使用ActiveX控件,根據(jù)我使用的體會(huì),在工作上
處理控件時(shí),必須注意和了解如下事項(xiàng):
(一)用Excel5.0/95工作簿文件格式保存Excel97工作簿時(shí),將選擇ActiveX控
件信息。當(dāng)用戶(hù)通過(guò)雙擊鼠標(biāo)來(lái)編輯內(nèi)嵌在其它應(yīng)用程序文檔中的Excel97工作簿
時(shí),該工作簿上的控件將不會(huì)正常工作。如果用戶(hù)是通過(guò)用右鍵單擊工作簿,然后
選中快捷菜單上的“打開(kāi)”命令來(lái)編輯工作簿的話(huà),工作簿上的控件就能正常工作
了。
(二)當(dāng)ActiveX控件處于激活狀態(tài)時(shí),將禁用某些
MicrosoftExcelVisualBasic方法和屬性。
例如,當(dāng)某一控件激活時(shí),就不能使用Sort方法,故下述按鈕單擊事件處理過(guò)
程中的代碼將失敗(因?yàn)橛脩?hù)單擊按鈕后,該按鈕就處于激活狀態(tài))。
PRivateSubCommandButton1 Click
Range(″a1:a10″) SortKey1:=Range(″a1″)
EndSub
解決辦法是通過(guò)選激活工作表上其它元素的方法來(lái)繞過(guò)這種問(wèn)題。例如,可用
下列代碼對(duì)單元格區(qū)域排序:
PrivateSubCommandButton1 Click
Range(″a1″) Activate
Range(″a1:a10″) SortKey1:=Range(″a1″)
CommandButton1 Activate
End Sub
(三)在MicrosoftExcel中,用OLEObjects集合中的OLEObject對(duì)象代表
ActiveX控件。
如果要用編程的方式向工作表添加ActiveX控件,可用OLEObjects集合的Add方
法。例如向第一張工作表添加命令按鈕。
Worksheets(1) OLEObjects Add″Forms CommandButton 1″,_
Left:=10,Top:=10,Height:=20,Width:=100
因?yàn)锳ctiveX控件也可用OLEObjects集合中的OLEObject對(duì)象代表,所以也可用
該集合中的對(duì)象來(lái)設(shè)置控件的屬性。例如要設(shè)置控件“CommandBotton1”的“左邊
位置”屬性。
Worksheets(1) OLEObjects(″CommandButton1″) Left=10
那些不屬于OLEObject對(duì)象屬性的控件屬性,可通過(guò)由Object屬性返回的實(shí)際
控件對(duì)象來(lái)設(shè)置。例如要設(shè)置控件“CommandButton1”的標(biāo)題。
Worksheets(1) OLEObjects(″CommandButton1″)
Object Caption=″runme″
因?yàn)樗械腛LE對(duì)象也是Shapes集合的成員,所以也可用該集合設(shè)置若干控件
的屬性。例如要對(duì)齊第一張工作表上所有控件的左邊框。
ForEachsInWorksheets(1) Shapes
Ifs Type=msoOLEControlObjectThens Left=10
Next
請(qǐng)注意,當(dāng)在控件所在工作表的類(lèi)模塊之外使用控件的名稱(chēng)時(shí),必須用工作表
的名稱(chēng)限定該控件的名稱(chēng)。在工作表上ActiveX控件的事件處理過(guò)程中,Me關(guān)鍵字
所指向的是工作表,而非控件。
新聞熱點(diǎn)
疑難解答
圖片精選