xlwings не может найти приложение XL - PullRequest
0 голосов
/ 21 июня 2020

Я сталкиваюсь с проблемой, аналогичной этим двум вопросам:

Недавно я удалил Office / Excel 2010 и с тех пор получаю сообщение об ошибке. У меня сейчас только Office 365, версия 16.0.12872.20200 32bit. Я попытался удалить и переустановить xlwings и всю виртуальную среду conda, в которой я работаю. Xlwings иногда открывал Excel 2010, несмотря на более новую установку.

Если я попытаюсь запустить app = xw.App() , book = xw.Book(), book = xw.Book(r"path\to\file.xlsx"), et c Я получаю следующую ошибку:

Traceback (most recent call last):

  File "<ipython-input-12-437cd03edaeb>", line 1, in <module>
    app = xw.App()

  File "C:\Users\User\Anaconda3\envs\emp_hist_env\lib\site-packages\xlwings\main.py", line 210, in __init__
    self.impl = xlplatform.App(spec=spec, add_book=add_book)

  File "C:\Users\User\Anaconda3\envs\emp_hist_env\lib\site-packages\xlwings\_xlwindows.py", line 299, in __init__
    self._xl = COMRetryObjectWrapper(DispatchEx('Excel.Application'))

  File "C:\Users\User\Anaconda3\envs\emp_hist_env\lib\site-packages\win32com\client\__init__.py", line 113, in DispatchEx
    dispatch = pythoncom.CoCreateInstanceEx(clsid, None, clsctx, serverInfo, (pythoncom.IID_IDispatch,))[0]

com_error: (-2147221005, 'Invalid class string', None, None)

Если, однако, Excel работает, то app = xw.App() по-прежнему не работает, а book = xw.Book() , book = xw.Book(r"path\to\file.xlsx") делать. Похоже, xlwings не может найти экземпляр приложения excel.

Я пытаюсь избежать переустановки Office 365 или того хуже, Office 2010. Любые идеи простых настроек, которые я могу изменить с помощью xlwings или быстрой настройки реестра, которая можно исправить?

1 Ответ

0 голосов
/ 29 июня 2020

В конце концов я решил проблему, удалив и MS Office, и Anaconda. Я переустановил Office 365, но в итоге установил Miniconda вместо Anaconda, чтобы немного более тщательно управлять своими средами. * Сразу заметил. Удаление его после удаления xlwings могло бы сэкономить мне время. Я заметил это только тогда, когда очищал файлы Anaconda, оставленные деинсталлятором.

...