Я пытаюсь написать сценарий python, который будет вставлять код VBA в рабочие книги, которые выводятся другой программой, чтобы упростить анализ данных. Прямо сейчас у меня есть пользователь go в Excel, откройте редактор VBA и добавьте модуль из файла, затем запустите макрос. У меня есть скрипт python, разработанный для того, что я хочу, но я все еще обеспокоен настройкой доверия Excel. Идея состоит в том, чтобы извлечь как можно больше пользовательской «работы» из процесса, и согласно этому посту: Programmati c Доступ к Visual Basi c Проект не является доверенным , мой код должен работать разрешить доступ, но я все еще получаю com_error. Конечно, я не могу оставить комментарий по этому вопросу о моей проблеме, поэтому здесь я пишу совершенно новый вопрос. Моя компания очень серьезно относится к кибербезопасности, поэтому я также подумал, что, возможно, это просто как-то не разрешено, но я не уверен, действительно ли это возможно. Любая помощь или совет с благодарностью.
Необходимые части моего кода:
import win32com
import win32com.client
import pythoncom
import tkinter as tk
from tkinter import filedialog
import ctypes
import win32api
import win32con
excel = win32com.client.Dispatch("Excel.Application")
workbook = excel.Workbooks.Open(Filename=fs)
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)
excelModule=workbook.VBProject.VBComponents.Add(1)
excelModule.CodeModule.AddFromString(macro)
Я также пытался поставить модификацию ключа перед открытием файла, и это ничего не изменило.