返回列表 上一主題 發帖

[發問] 有辦法共用VBA巨集模組嗎?

本帖最後由 n7822123 於 2019-6-19 01:38 編輯

回復 1# s13030029


方法一:  把你的巨集寫在 個人巨集活頁簿 ,只要修改裡面的巨集即可讓各個excel都可使用

方法二: 把你的巨集匯出到固定位置的資料夾內,未來只要維護該資料夾內的巨集檔案(.bas)即可
              在你要執行巨集的檔案寫入以下巨集,此巨集可以讓活頁簿打開的時候,會自動匯入指定的巨集檔 (.bas)
              注意,要寫在ThisWorkbook 裡面, 路徑檔名的部分請自己設定

自動匯入BAS檔的巨集如下:

Private Sub Workbook_Open()
xPath$ = "C:\Users\user\Desktop\要匯入的VBA.bas"    '路徑檔名自己設定
ThisWorkbook.VBProject.VBComponents.Import xPath
End Sub
程式是依需求寫的,需求表達不清楚
或者沒有上傳附件,愛莫能助

TOP

回復 2# n7822123


如果你的電腦只有你一個使用者的話,我會建議方法一比較簡單。
程式是依需求寫的,需求表達不清楚
或者沒有上傳附件,愛莫能助

TOP

本帖最後由 n7822123 於 2019-6-19 21:47 編輯

回復 5# s13030029


恩......這是個問題 哈哈,那就只能先移除再匯入啦,如下

Private Sub Workbook_Open()
With ThisWorkbook.VBProject
  For Each vbc In .VBComponents
    If vbc.Type = 1 Then .VBComponents.Remove .VBComponents(vbc.Name) 'type 1=一般模組
  Next
End With
XPath$ = "C:\Users\user\Desktop\要匯入的VBA.bas"  '路徑檔名自己設定
ThisWorkbook.VBProject.VBComponents.Import XPath
End Sub
程式是依需求寫的,需求表達不清楚
或者沒有上傳附件,愛莫能助

TOP

        靜思自在 : 人生不一定球球是好球,但是有歷練的強打者,隨時都可以揮棒。
返回列表 上一主題