python - Pandas 使用格式更新 Excel 文件

标签 python excel pandas file

我有一个 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/

相关文章:

python - pd.IndexSlice 列表

python - 一系列列表到多维 np 数组

python - JSON 数组作为 Python 请求中的单个参数值

python - 打印嵌套交叉验证中选择的参数

excel - 用于查找范围内所有彩色单元格的脚本

excel - 循环访问 VBA 用户窗体中的复选框控件

python - 使用Python将CSV数据加载到MySQL中,创建表并添加记录

Python写入文件smb路径

asp.net - 在上传控件中显示excel文件的所有版本(asp.net)

python - 根据两列和各自的范围值创建计数矩阵 pandas