本文介紹excel【ActiveX控件】相關(guān)的一些知識(shí)點(diǎn)。Excel控件是放置于窗體上的一些圖形對(duì)象,可用來(lái)顯示或輸入數(shù)據(jù)、執(zhí)行操作或使窗體更易于閱讀。這些對(duì)象包括文本框、列表框、選項(xiàng)按鈕、命令按鈕及其他一些對(duì)象。控件提供給用戶一些可供選擇的選項(xiàng),或是某些按鈕,單擊后可運(yùn)行宏程序。
第一,excel控件之ActiveX控件
ActiveX控件,比窗體工具條中的控件要更靈活,是VBE中用戶窗體控件的子集,在Excel工作表中和VBE編輯器中都是可用的,尤其在要對(duì)使用控件時(shí)發(fā)生的不同事件進(jìn)行控制時(shí)。我們能捕獲這些控件的事件,這也是其靈活的主要原因。這些事件可能是單擊、雙擊、變化(例如對(duì)組合框控件項(xiàng)目進(jìn)行新的選擇),用戶能離開(kāi)這個(gè)控件并轉(zhuǎn)移焦點(diǎn)到另一個(gè)控件或返回到Excel界面,等等。
ActiveX控件也有一個(gè)長(zhǎng)的屬性列表,如字體(Font)、標(biāo)題(Caption)、名稱(Name)、單元格鏈接(LinkedCell)、高度(Height),等等。這些屬性取決于控件的類型,但所有控件都有諸如名稱(Name)屬性和一些其它的屬性。
ActiveX控件也具有可自定義的屬性。例如,可指定當(dāng)用戶指向控件時(shí)指針的外觀。您可編寫宏,響應(yīng)與ActiveX控件相關(guān)的事件。可在Excel窗體上和VBA程序窗體和對(duì)話框中使用ActiveX控件。
在使用控件時(shí),如果不使用帶有控件事件的VBA代碼,則很少使用ActiveX控件;如果您不熟悉VBA,您應(yīng)該選擇使用窗體工具條控件。ActiveX控件與在VisualBasic編程語(yǔ)言中使用的控件相類似,是可以添加到VisualBasic編輯器自定義窗體中的控件。將ActiveX控件添加到工作表中時(shí),您應(yīng)編寫引用控件標(biāo)識(shí)號(hào)的宏代碼,而不是分配在單擊控件時(shí)要運(yùn)行的宏。當(dāng)窗體的用戶使用控件時(shí),將運(yùn)行您編寫的宏代碼來(lái)處理發(fā)生的任何事件。當(dāng)添加一個(gè)ActiveX控件到工作表中時(shí),它被內(nèi)嵌入工作表成為工作表的一個(gè)對(duì)象成員,并自動(dòng)處于“設(shè)計(jì)模式”,允許我們對(duì)控件進(jìn)行處理而不會(huì)引發(fā)控件事件。為了能捕獲控件的任何事件,該事件程序應(yīng)放置在工作表對(duì)象的模塊中,您能(在處于設(shè)計(jì)模式時(shí))通過(guò)在控件上雙擊進(jìn)入代碼模塊,并顯示出該控件的缺省過(guò)程。為了指定您想要的事件過(guò)程,您也可以在代碼模塊編輯器右上方的事件過(guò)程下拉列表中選擇相應(yīng)的事件過(guò)程。
但是,不可在圖表工作表或XLM宏工作表中使用控件。對(duì)于這些情況,您應(yīng)使用“窗體”工具欄上的控件。如果要從控件直接運(yùn)行附加的宏,最好也應(yīng)使用“窗體”工具欄控件。
對(duì)于要放到網(wǎng)頁(yè)上的Excel窗體和數(shù)據(jù),可包含ActiveX控件,并可編寫在Web瀏覽器中使用控件時(shí)要運(yùn)行的Web腳本(而不是宏代碼)。還可通過(guò)使用Microsoft腳本編輯器編寫VBScript或JavaScript形式的腳本。
第二,如何識(shí)別excel控件屬于哪類控件
要確定控件類型,可以右鍵單擊該控件,會(huì)顯示快捷菜單:
(1)如果快捷菜單包含“屬性”命令,則該控件為“控件工具箱”中的ActiveX控件,且您處于“設(shè)計(jì)”模式。
(2)如果快捷菜單包含“指定宏”命令,則該控件為“窗體”工具欄控件。
(3)如果快捷菜單包含“編輯文字”命令,則該對(duì)象為“繪圖”工具欄對(duì)象。
如果右鍵單擊控件以顯示快捷菜單時(shí)卻沒(méi)有響應(yīng),則該控件是ActiveX控件且您不在“設(shè)計(jì)”模式下。若要顯示ActiveX控件的快捷菜單以編輯屬性或查看宏代碼,則必須處于設(shè)計(jì)模式。