给定一个字典 aNewDictEachDay
和一个工作表 ws
=openpyxl.load_workbook('roi.xlsx', data_only=True).worksheets[0]
.
ws
的第 0 列 (A) 包含键。所有其他列都是空的(目前)。每天,我都想加载工作簿,并更新 ws
:
- 将当前日期写入新列的顶部单元格
- 对于
aNewDictEachDay.values()
中的每个值:- 如果其键已在第 0 列中:
- 将该值写在适当的位置
将(行)放入新列中
- 将该值写在适当的位置
- 其他:
- 将键添加为 Column0 中的新行
- 将该值写在适当的位置
将(行)放入新列中
- 如果其键已在第 0 列中:
我通常将 openpyxl 与已填充列的电子表格一起使用。由于电子表格当前只有一列,其他列(在本例中为 B)的概念似乎不存在:
In [238]: ws.columns
Out[238]: ((<Cell Sheet1.A1>, <Cell Sheet1.A2),)
如果列已存在,则可以使用 openpyxl
轻松覆盖其各个单元格的值。但是当列还不存在时怎么办呢?
之后:
for row in aNewDictEachDay.values():
如何以正确的方式使用 ws.append()
?
最佳答案
如果您只想添加单个单元格,最好使用 ws.cell()
,它允许您指定行和列索引。
插入“B”列:
for i in range(11, 1):
ws.cell(row=i, column=2).value = i
关于python - 如何将 dict 的值写入 openpyxl 中的空(新)列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31236938/