openpyxl(2.4.8)风格背景故障;总是黑的

时间:2017-09-26 13:16:38

标签: python openpyxl

我最近将我的代码切换到openpyxl,以利用更新工作簿的能力,并且我遇到了背景风格的问题。我使用颜色和十六进制值尝试了下面代码的几个变体,我总是得到相同的结果,即黑色背景和粗体白色文本。提前致谢!

from openpyxl.styles import NamedStyle, PatternFill, Border, Side, 
Alignment, Protection, colors, Font

styl_hdg = NamedStyle(name="styl_hdg")

styl_hdg.font = Font(color=colors.WHITE, bold=True)
styl_hdg.alignment = Alignment(wrap_text=True)
styl_hdg.fill = PatternFill(bgColor=colors.DARKGREEN, fill_type="solid")

ws.cell(row=myrow, column=mycol).style = styl_hdg

我也试过这个,因为有时我会得到并且已经定义了错误样式。当我将行添加到现有工作簿/工作表时。

ws.cell(row=myrow, column=mycol).font = Font(bold=True,color=colors.WHITE)
    ws.cell(row=myrow, column=mycol).fill = 
PatternFill(fill_type="solid",bgColor=colors.DARKGREEN)

2 个答案:

答案 0 :(得分:3)

来自OOXML规范:

  

此元素用于指定图案和纯色单元格填充的单元格填充信息。对于固体细胞填充(无图案),fgColor是   使用。

所以你需要设置[2] pry(main)> require 'money' => true [3] pry(main)> money = Money.new(12345, 'USD') => #<Money fractional:12345 currency:USD> [6] pry(main)> "#{money.currency.symbol}#{money.to_f.ceil}" => "$124"

答案 1 :(得分:0)

感谢Pedroski55: https://python-forum.io/Thread-Best-way-to-set-cell-background-colour-in-openpyxl

$usersList = Users::whereIn('id', [1, 2, 3])->get();