[英]Deploying a VBA-macro
我創建了一個VBA宏,它將被我公司內部的一些word文檔使用。 宏檢測標記並從文檔中刪除章節。 本文檔由另一個程序創建。 因此宏應該是可單獨分發的。
是否可以生成一個可執行文件,將宏添加到運行可執行文件的用戶?
是否有另一種方法來打包宏並將其安裝在用戶的計算機上?
謝謝
部署宏的最簡單方法是通過模板。 創建宏並將文件另存為.dotm(啟用宏的模板)。 我想你會得到一個建議,保存你的.dotm文件。
任何想要使用你的模板的同事都必須把它放在那個目錄里(我認為它是C:\\ Users \\ [UserName] \\ AppData \\ Roaming \\ Microsoft \\ Templates)。 之后,他應該能夠在處理任何word文檔時使用宏。
基本上有五種方法可以做到這一點:
1)向每個人發送一個帶有宏的文本文件,它們可以粘貼到自己的Normal模板中。 這對於非常簡單的宏來說很好,這些宏不太可能與用戶自己創建的宏有任何名稱沖突,但它確實需要VB編輯器的基本知識。
2)通過導出包含宏的模塊向每個人發送您創建的.bas文件。 這為您提供了更多控制,避免了復制/粘貼錯誤。 仍然需要對VB編輯器的基本理解(或者你的體面指令)。
3)將宏打包在一個模板(.dotm文件)中,該模板位於Templates文件夾中。 用戶可以將該模板應用於他們正在創建的任何文檔,並獲得對宏的訪問權限。 不需要VB知識; 這是通過標准的Word新文件過程完成的。 如果需要,還允許您包含樣式或其他內容。
4)將宏打包為一個位於Startup文件夾中的全局模板(.dotm文件)。 用戶可以訪問他們處理的每個文件中的宏,無需應用模板。 如果您正在做的事情對您團隊的工作流程至關重要,並且不要求您在宏中包含樣式,那么這很好。 您還可以構建UI元素。 (在Word 2011中,此方法可能存在問題;用戶可能無法立即訪問全局模板,但很容易返回。)
3和4都要求用戶最初將.dotm文件放在正確的位置。 您可以幫助他們(一種方法是使用另一個Word文檔作為“設置”文件,在運行時,將模板放在假定的正確文件夾中)。 顯然,您需要做更多的工作,所以您希望在多大程度上取決於您和您的業務需求。
5)此外,如果您可以控制文檔本身的創建(而不僅僅是宏),則可以在文檔中嵌入宏。 您可以將宏本身放在文檔的ThisDocument模塊中(在Project Explorer中找到您的文檔,然后打開Microsoft Word對象)。 然后將文檔另存為.docm(啟用宏的文檔)。 應該指示用戶在打開文檔時啟用宏(不同版本的Word使用稍微不同的界面來提示用戶這一點,但它總是非常明顯)。
在過去的7年中,我一直以不同的方式部署Word VBA。 該軟件是一個Word插件,可以讓教師更輕松地提供有關作業的反饋。 它作為一個30天的試用版進行分發,如果用戶購買它們,它們將獲得一個密鑰,使他們可以使用eMarking Assistant一年。 您可以在http://eMarkingAssistant.com上測試部署系統
部署和許可機制如下:
這個過程的優點是:
彼得埃文斯
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.