我知道这是一个非常具体的问题,但是有没有人使用OpenPyXL的文本环绕功能遇到任何问题?我在迭代了很多行的同时将它应用到每个单元格,但它似乎没有任何效果?随意提出有关代码结构的任何其他建议。
for row in ws.iter_rows('A2:D1000'):
for cell in row:
if end != True:
cell.style.alignment.wrap_text = True
cell.value = array[x]
print ("Line: " + str(x))
x += 1
try:
end = array[x]
except:
end = True
答案 0 :(得分:11)
我知道这是一个老问题,但我只是遇到了类似的问题,所以这里就是这样。
从openpyxl 2.0开始,样式是不可变的。您需要使用换行文本创建样式,然后将该样式应用于单元格。
from openpyxl.styles import Alignment
# create alignment style
wrap_alignment = Alignment(wrap_text=True)
# assign
cell.alignment = wrap_alignment
答案 1 :(得分:-1)
Openpyxl是一个库而不是应用程序:在许多情况下,您只能为Excel之类的应用程序留下说明,格式化单元格就是一个例子。
如果要在Python中包装文本,请使用textrwap
模块。