我遇到了一件很奇怪的事情。当我尝试用纯色填充 Excel 工作表中的单元格时,它会填充相邻的单元格,有时甚至是几十个。这很奇怪,因为我在代码的其他地方成功地做了完全相同的事情,只是这个不同。我正在慢慢地对可能出现的问题没有想法,并认为也许这里有人遇到了类似的问题并解决了它。我的相关代码是:
__incorrectUnitsColour__='FF33CC'
cell, sheet =GetCellFromDest(str(named_range.destinations),wb) # Returns the cell pointed to by the named_range, this should work fine as I use it a lot in other places.
cell.style.fill.fill_type=openpyxl.style.Fill.FILL_SOLID
cell.style.fill.start_color.index=__incorrectUnitsColour__
如果您对可能出现的问题有任何想法,我会很高兴听到他们的声音,他们甚至不需要工作就可以让我朝着正确的方向思考;)
我在上面的代码中附加了:
print cell.row
print cell.column
正如预期的那样,它返回2 G
. 我还证实,每运行几次,单元格突出显示的程度就会增加。openpyxl
如果我使用相同范围突出显示同一工作表中的其他单元格,则它甚至比这更奇特。
我有一种强烈的感觉,工作表设置有问题,但我不知道是什么。此外,仅当我尝试以编程方式突出显示同一工作表中的多个单元格时,才会出现此错误。
是什么让所有这些更加奇怪的突出显示不同工作表中的单元格最终导致突出显示相同范围的单元格。
后续问题:是否openpyxl
缓存任何工作表/工作簿数据?因为这可以解释这种行为。