コンピューターに2つのスケジュールされたタスクがあります。 Excelファイルを開き、マクロを実行しますが、動作は非常に似ています。どちらも私のコンピューターで動作します。しかし、スケジュールされたタスクを同僚のコンピューターに移動しました。 1つは機能し、もう1つは機能しませんでした。
動作しなかったものはExcelを開きましたが、次のようなエラーがありました:
「Visual Basicプロジェクトへのプログラムによるアクセスは信頼できません」。
私が言ったように、両方のExcelファイルは非常に似ています。動作しなかったプロジェクトは、2つの追加プロジェクトを参照しますが、他のプロジェクトは参照しません。彼らです、
Microsoft Visual Basic for Applications Extensibility 5.3
Microsoft Windows Common Controls-2.6.0 (SP6)
以前にこのエラーに出くわしたことはありません。
[ファイル]-> [オプション]-> [セキュリティセンター]-> [セキュリティセンターの設定]-> [マクロ設定]-> [VBAプロジェクトオブジェクトモデルへのアクセスを信頼する]。
これは通常、拡張ライブラリを参照している場合に必要です。
これは、Pythonを使用してpywin32
Mark Hammondによるモジュール。
@ user2140173による上記の投稿が実際に行うことは、いくつかのレジストリ値を変更することです。これは、pywin32
モジュールは次のとおりです。
インポートwin32apiインポートwin32con
key = win32api.RegOpenKeyEx(win32con.HKEY_CURRENT_USER,
"Software\\Microsoft\\Office\\16.0\\Excel"
+ "\\Security", 0, win32con.KEY_ALL_ACCESS)
win32api.RegSetValueEx(key, "AccessVBOM", 0, win32con.REG_DWORD, 1)
参照: