xlwings:保存并关闭

时间:2018-11-22 08:34:09

标签: 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()

当我进入wb.save(workbook_path)时,提示您:     该位置已存在“名为abc.xlsx的文件”。     您要更换它吗?'

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

请对此提供任何帮助。

p.s。 -我基本上是想将数据写入预先格式化的Excel工作表中。如果还有其他方法可以保留格式,我将很乐于尝试。我已经尝试过,但是它在if newCell上引发了错误:Easily write formatted Excel from Python: Start with Excel formatted, use it in Python, and regenerate Excel from Python

1 个答案:

答案 0 :(得分:1)

在指定wb.save()的路径时,可能需要指定完整路径

  

path(str,默认为None)–工作簿的完整路径

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

>>> from xlwings import Workbook
>>> wb = Workbook()
>>> wb.save()
>>> wb.save(r'C:\path\to\new_file_name.xlsx')