这段代码工作正常:
from openpyxl import Workbook
data = [
['Year', 'Amount'],
['2016', '1000'],
['2017', '1300'],
['2018', '1500'],
]
wb = Workbook()
for row in data:
wb.active.append(row)
wb.save('test.xlsx')
现在我想将第一行(年份、金额)设为标题。
如何使用 openpyxl 执行此操作?
最佳答案
您可以通过更改字体颜色卡住第一行并将第一行设为print_title_rows
将第一行标记为页眉为字体添加 RGB 十六进制值颜色
font = Font(color="FF0000")
ws["A1"].font = font
ws["B1"].font = font
如果您尝试卡住顶行,即第一行并将添加打印标题添加到第一行。 您可以通过设置 worsheet 属性的 freeze_panes 和 print_title_rows 来实现。
ws.freeze_panes = "A2"
ws.print_title_rows='1:1'
freeze_panes 将卡住给定单元格上方的行,并且必须在插入一些数据后调用。
from openpyxl import Workbook
from openpyxl.styles import Font
data = [
['Year', 'Amount'],
['2016', '1000'],
['2017', '1300'],
['2018', '1500'],
]
wb = Workbook()
for row in data:
wb.active.append(row)
font = Font(color="FF0000")
ws = wb.active
ws.freeze_panes = "A2"
ws["A1"].font = font
ws["B1"].font = font
ws.print_title_rows = '1:1'
wb.save('test.xlsx')
关于python - OpenPyXl:将行标记为标题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55041209/