以下是“Python openpyxl 无法保存文件的解决方案”的完整攻略:
问题描述
当使用openpyxl库编写excel文档时,有时会遇到无法保存文件的问题,程序并未报错,但是保存后的文件却无任何变化。
解决方案
方案一:关闭Excel文件
如果您正在编辑的excel文档已经被打开,Python脚本试图修改该文件,将会导致openpyxl无法保存文件。因此,您需要关闭该文件,然后再次运行脚本。请确保您的代码关闭了所有打开的excel文件。
示例:
import openpyxl
# 打开excel文件
workbook = openpyxl.load_workbook('example.xlsx')
# 打开工作表
sheet = workbook.active
# 关闭excel文件
workbook.close()
# 在保存之前修改工作表
sheet['A1'].value = 'Hello, World!'
# 保存修改后的工作表
workbook.save('example.xlsx')
方案二:使用新文件名称
openpyxl 无法保存文件的另一个原因是文件权限问题。在此情况下,建议使用新的文件名称。打开原有文件、复制内容到新文件并保存。
示例:
import openpyxl
# 打开excel文件
workbook = openpyxl.load_workbook('example.xlsx')
# 创建一个新的excel文件
new_workbook = openpyxl.Workbook()
# 获取工作表
source_sheet = workbook.active
dest_sheet = new_workbook.active
# 循环遍历每一个单元格,将它们复制到新的工作表上去
for row in source_sheet:
for cell in row:
dest_sheet[cell.coordinate].value = cell.value
# 在新excel文件中保存更改
new_workbook.save('example_new.xlsx')
# 关闭工作簿
workbook.close()
new_workbook.close()
结论
以上就是Python openpyxl 无法保存文件的解决方案的完整攻略。如果遇到保存文件失败的问题,您可以尝试上述方法解决。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python openpyxl 无法保存文件的解决方案 - Python技术站