小编dar*_*nix的帖子

pywin32 和 excel。写入大量数据时的异常

我目前正在尝试使用 pywin32 库将大量数据写入 Excel 电子表格。作为我面临的问题的一个简单示例,请使用以下代码生成 1000 个单元格 x 1000 个单元格的乘法表。

import win32com.client
from win32com.client import constants as c

xl = win32com.client.gencache.EnsureDispatch("Excel.Application")                             
xl.Visible = True
Workbook = xl.Workbooks.Add()
Sheets = Workbook.Sheets

tableSize = 1000

for i in range(tableSize):
    for j in range(tableSize):
        Sheets(1).Cells(i+1, j+1).Value = i*j
Run Code Online (Sandbox Code Playgroud)

对于小值,这有效。但是,对于较大的值,python 程序最终会因错误而崩溃:

Traceback (most recent call last):
  File ".\Example.py", line 16, in <module>
    Sheets(1).Cells(i+1, j+1).Value = i*j
  File "C:\PYTHON27\lib\site-packages\win32com\client\__init__.py", line 474, in __setattr__
    self._oleobj_.Invoke(*(args + (value,) + defArgs)) pywintypes.com_error: (-2147352567, 'Exception occurred.', (0, None, None, …
Run Code Online (Sandbox Code Playgroud)

python excel pywin32

5
推荐指数
1
解决办法
1万
查看次数

标签 统计

excel ×1

python ×1

pywin32 ×1