Python:openpyxl将单元格填充更改为“无”,边框更改为“无”

Ste*_*lfe 4 python excel

我有一个Excel文档,我正在尝试删除2张纸上的格式(任何单元格颜色/边框)。“表格”和“测试”。

我浏览了有关PatternFill的所有文档,但只看到了如何应用颜色/格式,而不是如何将它们重置为null。

大家都可以提供任何帮助/建议,我们将不胜感激。

谢谢

Xuk*_*rao 5

必须创建PatternFill带有自变量的对象fill_type=None才能获得无单元格颜色。下面是一个代码片段,用于剥离现有excel工作簿中颜色和边框的所有单元格:

import openpyxl

# Load workbook
wb = openpyxl.load_workbook('workbook.xlsx')

# Initialize formatting styles
no_fill = openpyxl.styles.PatternFill(fill_type=None)
side = openpyxl.styles.Side(border_style=None)
no_border = openpyxl.styles.borders.Border(
    left=side, 
    right=side, 
    top=side, 
    bottom=side,
)

# Loop through all cells in all worksheets
for sheet in wb.worksheets:
    for row in sheet:
        for cell in row:
            # Apply colorless and borderless styles
            cell.fill = no_fill
            cell.border = no_border

# Save workbook
wb.save('workbook_modified.xlsx')
Run Code Online (Sandbox Code Playgroud)