自O(shè)ffice 2007版本開始,Microsoft對Office界面進行了徹底的改造,將原來的菜單和工具欄改成了功能區(qū),文件格式也進行了改變?,F(xiàn)在的Office文件,實際上是一個壓縮文件,其中包括了創(chuàng)建文檔的XML文件。這樣,我們能夠通過修改其XML文件結(jié)構(gòu),從而創(chuàng)建自已的功能區(qū)。
將文件修改為壓縮文件
首先,需要修改Excel文件的擴展名為.zip,例如將文件MyCustomRibbon.xlsm修改為MyCustomRibbon.zip或者MyCustomRibbon.xlsm.zip,此時,會彈出一個如下圖1所示的警告信息框,單擊“是”。
圖4
我們給按鈕指定了內(nèi)置的圖像并設(shè)置其大小。
也可以給按鈕添加自定義圖像,此時應(yīng)使用:
image=”imageID”
但需要添加關(guān)聯(lián)關(guān)系并在Excel文件中包括圖像。需要在customUI文件夾中創(chuàng)建兩個新文件夾:
1.文件夾images:用于包含自定義圖像。
2.文件夾_rels:用于關(guān)聯(lián)。在此文件夾中添加一個文件,文件名為XML文件的名字(示例中是my_customUI.xml),后綴為.rels,因此其名字為:my_customUI.xml.rels。該文件告訴Excel怎樣識別想要放置在功能區(qū)中的圖像,其代碼類似如下:
示例中,在images文件夾中,放置了名為my_pic_filename.png和my_2nd_pic_filename.png的圖像文件,如果想在按鈕中使用,則需要通過指定其ID來調(diào)用,例如my_icon_1:
下面,我們?yōu)榘粹o關(guān)聯(lián)宏,以便用戶單擊按鈕時響應(yīng)相關(guān)功能。
將:
修改為:
使用更新后的文件替換掉壓縮文件中的相應(yīng)文件后,恢復(fù)Excel擴展名,打開Excel文件,開啟VBE,在標(biāo)準(zhǔn)模塊中輸入代碼:
Sub MyHello(control As IRibbonControl) ? ?Dim yourName As String ? ?yourName = InputBox(“請輸入你的名字:”) ? ?MsgBox yourName & “, 歡迎你!”End Sub
此時,當(dāng)你按下按鈕1時,會彈出一個輸入框要求輸入名字,在輸入完成后,會給出一句問候信息。