我有一个 Excel 文件,其中包含多个工作表和特殊格式(颜色、符号等...)。
在 Python 中,我知道我可以将文件读入数据帧,更新某些列,然后将文件写回,但它会丢失所有格式并被覆盖。
有没有办法打开文件并仅更新某些列的值,而保持其他工作表不变并按原样设置格式?
最佳答案
是的,您可以通过这种方式使用 openpyxl:
from openpyxl.reader.excel import load_workbook
wb = load_workbook(filename='mypath\myfile.xlsx')
ws = wb.worksheets[0]
ws.cell(coordinate="A1").value = 2
wb.save("mypath\myfile.xlsx")
其中单元格 A1 具有特定格式。其格式保持不变,仅单元格的值发生变化。
要读取单元格的值,您可以使用以下命令:
ws.cell(row=row_number, column=column_number).value
要使用 for 循环更改列的值,可以选择以下选项:
new_data = ['a','b','c','d']
for index, cell in enumerate(ws['A']):
cell.value = new_data[index]
关于python - Pandas 使用格式更新 Excel 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50237603/