xlwings:保存并关闭

yl_*_*low 7 python excel xlwings

我试图找出如何在写入后使用 xlwings 保存并关闭现有工作簿:

import xlwings as xw

list_of_values = [1, 2, 3]
workbook_path = 'abc.xlsx'
wb = xw.Book(workbook_path)
ws = wb.sheets['sheet1']
ws.range('E35').value = list_of_values
wb.save()
wb.close()
Run Code Online (Sandbox Code Playgroud)

当我到达 时wb.save(workbook_path),出现提示:“此位置已存在名为 abc.xlsx 的文件”。你想更换它吗?

我想立即覆盖该文件而不出现提示。根据文档,wb.save()应该自动覆盖(参见: https: //docs.xlwings.org/en/v0.6.4/api.html)。我也试过了wb.save(workbook_path),但是还是出现弹窗。

感谢对此的任何帮助。

ps - 我基本上试图将数据写入预先格式化的 Excel 工作表中。如果有其他方法可以保留格式,我很乐意尝试。我已经尝试过这个,但它抛出一个错误if newCellEasy write formatted Excel from Python: Start with Excel formatted, use it in Python, and regenerate Excel from Python

ane*_*oid 4

当您指定以下路径时,您可能需要指定完整路径wb.save()

\n\n
\n

path(str,默认 None) \xe2\x80\x93 工作簿的完整路径

\n
\n\n

它将保存文件并覆盖而不提示。来自他们的文档:

\n\n
\n
>>> from xlwings import Workbook\n>>> wb = Workbook()\n>>> wb.save()\n>>> wb.save(r\'C:\\path\\to\\new_file_name.xlsx\')\n
Run Code Online (Sandbox Code Playgroud)\n
\n