久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

如何讓VBA代碼適用于所有工作簿?

 VBA說 2020-04-07

▌問題引入

昨天幫交流群群友解決了一個批量打印的問題,,群友想讓這段代碼適用于所有打開的工作簿,,每次在功能區(qū)點個按鈕就能執(zhí)行代碼

成品效果


而實現(xiàn)這個功能就是用Excel加載宏來實現(xiàn)的,。

之前寫VBA封裝的時候,,講過加載宏,加載項他們之間的區(qū)別,。簡化為下圖:(詳細可以看我的dll封裝學習筆記(一)我的dll封裝學習筆記(二)

我們這次做的就是Excel加載宏工作簿(xla或者xlam格式),。

▌解決過程

制作加載宏工作簿我們主要分為三個主要步驟


1.修改我們已經寫好的代碼,以適用于加載宏工作簿,。
2.將加載宏另存為xla或者xlam格式,。

3.寫功能區(qū)XML代碼,就是功能區(qū)顯示那個用于點擊的按鈕,。

●步驟一:修改代碼

因為要適配所有工作簿,,所以不要出現(xiàn)具體工作表名字。默認操作的都是當前Sheet。

Sub test()Worksheets("表格1").Range("a1") = 1End Sub

改成

Sub test()Range("a1") = 1End Sub


然后,,我們還要實現(xiàn),,將sub過程關聯(lián)到功能區(qū)的按鈕,使得點擊按鈕,,運行這個sub過程,。我們又加了一句:control As IRibbonControl

Sub test(control As IRibbonControl)Range("a1") = 1End Sub

到此代碼修改就可以了。

然,,必要的防錯處理必須要有,,比如不滿足某個條件直接Exit Sub。這個不細說,。

●步驟二:另存為xlam格式

這個沒什么好說的,,直接另存。需要注意的一點是,,另存的時候,,默認的路徑是存儲在加載宏工作簿路徑下。


我們一般換個好找的地方,,比如桌面,,因為待會還要對他進行編輯。

●步驟三:設計XML代碼,,并壓入xlam

工具

①Custom UI Editor For Microsoft Office(獲取方法,,后臺回復:  功能區(qū)

該工具用于壓入功能區(qū)XML代碼。具體XML代碼怎么寫,,這個工具怎么使用,,可以參看我原來的文章 《VBA小白也學得會的Robbion功能區(qū)》 講的很詳細。

至此,,加載宏就制作完成了,。

▌關于加載

制作好加載宏了,怎么讓所有的Excel都能適配這段代碼呢,?

有兩種方式:

1.將做好的xlam加載宏文件放在自啟動文件夾(去Office安裝路徑下找xlstart文件夾)



放在這個文件夾下,,只要Excel啟動,這個加載宏都會被加載出來,。如果不想加載了,,手動刪除這個文件。

2.通過加載宏管理器加載

如果不想加載了,,手動刪除原本的文件?;蛘甙讶サ艄催x這個加載宏,。

推薦閱讀:(點擊下方標題即可跳轉)

    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多