我使用openpyxl 2.0.3和python2.7。
有没有办法将样式应用于工作表中的每个单元格?假设我想更改所有单元格的字体,类似于打开excel文档的方式,点击ctrl + a,右键单击并更改格式。
答案 0 :(得分:2)
没有方法可以做到这一点。目前,最好的方法可能是为所有相关列或行设置样式
style = Style(…)
for col in 'ABCD':
ws._styles['A'] = style
我认为我们将在即将发布的版本中努力改进处理方式。
答案 1 :(得分:0)
我理解这个问题是否有效地更改了默认工作表(工作簿?)字体。这与我需要更改默认字体以匹配其他excel文档基本相同。关于在单元格或列上更改字体有许多类似的问题:
此答案更改默认工作簿字体。很明显,API不支持此功能,但我很乐意覆盖该软件包。我开始搜索 Calibri ,这是我在计算机上不使用的字体:
sock.send("ERR ")
TypeError: a bytes-like object is required, not 'str'
中的两行看起来很相似:
..\openpyxl\styles\__init__.py
from .fonts import Font, DEFAULT_FONT
from .named_styles import NamedStyle
改变:
fonts.py
其他似乎值得关注的地方有:# Hack default font
# DEFAULT_FONT = Font(name="Calibri", sz=11, family=2, b=False, i=False,
DEFAULT_FONT = Font(name="Calibri", sz=10, family=2, b=False, i=False,
color=Color(theme=1), scheme="minor")
,named_styles.py
,stylesheet.py
,styleable.py
和theme.py
。
我很感激有任何建议可以整理workbook.py
来自fonts.py
的{{1}}中的常量。