Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x VBA函数中的Python:xlwings_Python 3.x_Excel_Vba_Xlwings - Fatal编程技术网

Python 3.x VBA函数中的Python:xlwings

Python 3.x VBA函数中的Python:xlwings,python-3.x,excel,vba,xlwings,Python 3.x,Excel,Vba,Xlwings,我使用xlwings库在VBA Sub中运行python。在python模块内,我导入CLR库以调用C#类。在Excel中运行代码时,它会返回以下内容: 错误 回溯(最近一次呼叫最后一次): 文件“”,第1行,在 文件“t:\development\retailPythonModule.py”,第11行,在 将xlwings作为xw导入 文件“C:\ProgramData\Anaconda3\lib\site packages\xlwings\\uuuuu init\uuuuuu.py”,第2

我使用xlwings库在VBA Sub中运行python。在python模块内,我导入CLR库以调用C#类。在Excel中运行代码时,它会返回以下内容:


错误
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
文件“t:\development\retailPythonModule.py”,第11行,在
将xlwings作为xw导入
文件“C:\ProgramData\Anaconda3\lib\site packages\xlwings\\uuuuu init\uuuuuu.py”,第23行,在
从…起将xlwindows作为xlplatform导入
文件“C:\ProgramData\Anaconda3\lib\site packages\xlwings\\u xlwindows.py”,第25行,在
从comtypes导入IUnknown
文件“C:\ProgramData\Anaconda3\lib\site packages\comtypes\\uuuu init\uuuu.py”,第165行,在
coInitializeX()
文件“C:\ProgramData\Anaconda3\lib\site packages\comtypes\\uuuuu init\uuuuuu.py”,第156行,在CoInitializeX中
_ole32.CoInitializeEx(无,标志)
文件“\u ctypes/callproc.c”,第918行,在GetResult中
OSError:[WinError-2147417850]设置后无法更改线程模式
按Ctrl+C将此邮件复制到剪贴板。
好啊
这段代码在Jupiter笔记本中运行得很好,只有在我尝试通过excel运行它的时候


请帮忙,我在这方面还是新手。

我设法解决了这个问题。我在xlwings之前导入clr,所以通过导入xlwings首先解决了这个问题

Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "t:\development\retailPythonModule.py", line 11, in <module>
    import xlwings as xw
  File "C:\ProgramData\Anaconda3\lib\site-packages\xlwings\__init__.py", line 23, in <module>
    from . import _xlwindows as xlplatform
  File "C:\ProgramData\Anaconda3\lib\site-packages\xlwings\_xlwindows.py", line 25, in <module>
    from comtypes import IUnknown
  File "C:\ProgramData\Anaconda3\lib\site-packages\comtypes\__init__.py", line 165, in <module>
    CoInitializeEx()
  File "C:\ProgramData\Anaconda3\lib\site-packages\comtypes\__init__.py", line 156, in CoInitializeEx
    _ole32.CoInitializeEx(None, flags)
  File "_ctypes/callproc.c", line 918, in GetResult
OSError: [WinError -2147417850] Cannot change thread mode after it is set

Press Ctrl+C to copy this message to the clipboard.

OK