為特定 Excel 檔案啟用宏

為特定 Excel 檔案啟用宏

(如何)我可以啟用巨集嗎Excel (2007) 文件?

透過信任中心停用巨集安全性允許巨集開啟全部試算表.我可以將其設定為“禁用帶有通知的所有宏”,但 Excel 會自動阻止我的文件中的宏,我必須通過安全警告/選項/啟用此內容每次:

在此輸入影像描述

我不想使用值得信賴的地點功能,因為檔案在物理位置之間移動。
出於同樣的原因,如中提到的數位證書這個問題不是一個選擇。

將文件另存為Excel 啟用巨集的工作簿.xlsm擴充)沒有什麼差別。

答案1

即使文件四處移動,您也可以使用來自受信任的數位憑證來簽署您的巨集項目。CA

實際上目的MS Office 中對巨集專案進行數位簽章的功能之一是,它可以從任何啟用了受信任巨集的位置運行,並且在執行時不會發出警告。

如果沒有數位簽名,您就無法在沒有任何警告的情況下讓它在任何工作站上運行,因為這違背了圍繞巨集建置的安全性的全部目的。

以下是對巨集項目進行數位簽章的方法:

  1. 開啟包含要簽署的巨集項目的檔案。

  2. 在選項卡上的群組DeveloperCode,按一下Visual Basic

  3. 在 Visual Basic 中,在Tools選單上按一下Digital Signature。將出現「數位簽章」對話框。

  4. 選擇一個證書並按一下“確定”。

筆記:

a) 如果「開發人員」標籤不可用:按一下該File標籤。點擊Options。點擊Customize Ribbon。在「自訂功能區」清單中,按一下Developer,然後按一下「確定」。

b) 如果您尚未選擇數位證書或想使用其他數位證書,請按一下Choose。選擇一個證書並按一下“確定”。

c) 建議您僅在解決方案經過測試並準備好分發後才對巨集進行簽章:當已簽署的巨集專案中的程式碼以任何方式變更時,其數位簽章將會被刪除。但是,如果您擁有先前用於在電腦上對項目進行簽署的有效數位證書,則在儲存巨集項目時會自動重新簽署。

d) 如果您想要防止解決方案的使用者意外變更巨集項目並使簽章無效,請在簽章前鎖定巨集項目。您的數位簽名意味著您保證該項目自您簽署以來沒有被篡改。您的數位簽名並不能證明您編寫了該項目。因此,鎖定巨集項目不會阻止其他使用者用另一個簽章取代該數位簽章。企業管理員可以重新簽署範本和加載項,以便控制使用者在其電腦上執行的內容。

e) 如果您建立向巨集項目新增程式碼的加載項,則您的程式碼應確定該項目是否經過數位簽名,並應在使用者繼續之前通知使用者變更已簽署項目的後果。當您對巨集進行數位簽章時,取得時間戳記非常重要,以便在用於簽章的憑證已過期或在簽章後已被撤銷時其他使用者可以驗證您的簽章。如果您在沒有時間戳記的情況下簽署巨集,則簽章在憑證的有效期限內仍然有效。

f) 請注意對您的巨集項目進行數位簽名不同於受信任的位置

參考:

答案2

我相信這在 Windows 上是可能的(請參閱其他人的評論)。

在 Mac 上,精細控制似乎不可用(另請參閱Excel 2016 巨集 - Windows/Mac 問題)。

若要防止「啟用/停用巨集」彈出窗口,您可以前往 Excel -> 首選項 -> 安全性 -> 啟用所有巨集。

然而,這在安全性方面顯然不太好。

相關內容