import win32com.client
o = win32com.client.DispatchEx("Excel.Application")
# Run in background, if application fails then excel may not close properly.
o.Visible = False
o.ScreenUpdating = False
o.Interactive = False
wb = o.Workbooks.Open('test.xlsm') # enter full path
ws = wb.Worksheets(1) # sheet number starting at 1
ws.cells(1, 1).value = 'test'
o.DisplayAlerts = False # automatically close save prompt.
wb.SaveAs(Filename='test.xlsm') # enter full path
o.DisplayAlerts = True
wb.Close(True)
2条答案
按热度按时间gz5pxeao1#
Openpyxl不支持.xlsm文件,如果您安装了Excel,可以使用
win32com.client
。为了保存时间,您需要使用pip install pywin32
才能访问此库。下面是一个打开文件的例子。
oalqel3c2#
openpyxl库不是设计来与excel VBA一起使用的,所以它不会打开xlsm文件,如果你需要打开很多结构相同的xl文件并以某种方式处理它们,那么你可以配置一个额外的excel文件,它会汇总前面的并已经处理过,你的任务不太清楚