我正在尝试更改n列的列宽。 我可以按照以下代码对行执行此操作。
rowheight = 2
while rowheight < 601:
ws.row_dimensions[rowheight].height = 4
rowheight += 1
我遇到的问题是列是字母而不是数字。
答案 0 :(得分:2)
要获取列索引,您应该能够使用:
i = openpyxl.utils.column_index_from_string(?)
然后:
ws.column_dimensions[i].width = ?
答案 1 :(得分:2)
正如ryachza所指出的,答案是使用openpyxl实用程序,但是要使用的实用程序是get_column_letter
而不是column_index_from_string
,因为我想将数字转换为字母而不是反之亦然。
这是工作代码
from openpyxl.utils import get_column_letter
# Start changing width from column C onwards
column = 3
while column < 601:
i = get_column_letter(column)
ws.column_dimensions[i].width = 4
column += 1
答案 2 :(得分:0)
是否可以使用切片来做到这一点?
col_range = ws['C:F']
for col in col_range:
ws.column_dimendions.width = 15
我的代码没有任何错误,但是在工作簿上看不到列宽的变化。