Как я могу настроить условный формат в openpyxl? - PullRequest
0 голосов
/ 09 июля 2020

Я все еще новичок в Python, и я хотел создать автоматическую задачу, чтобы отфильтровать все данные о продажах с отрицательной маржой в% и выделить их красным для дальнейшего исследования. Я только что придумал пример ниже, но каждый раз, когда я запускаю команду, новый файл Excel заполняет только пустую книгу .. Я делаю явную ошибку?

SALES ID Sales COST GP $ Margin% 1 $ 2,000.00 $ 1,000.00 $ 1,000.00 50.00% 2 6000.00 $ 4500.00 $ 1500.00 25.00% 3 100.00 $ 27.00 $ 73.00 73.00% 4 1000.00 $ 1200.00 - 200.00 $ -20.00%

Формула ниже:

from openpyxl import Workbook
wb = 'margin.xslx'
from openpyxl.styles import Color, PatternFill
from openpyxl.styles.differential import DifferentialStyle
from openpyxl.formatting.rule import ColorScaleRule, CellIsRule, FormulaRule
wb = Workbook()
ws = wb.active

# Create fill
redFill = PatternFill(start_color='EE1111', end_color='EE1111', fill_type='solid')
ws.conditional_formatting.add('e2:e5',
CellIsRule(operator='lessThan', formula=['0'], fill=redFill))
wb.save("test2.xlsx")

1 Ответ

0 голосов
/ 11 августа 2020

Используйте вместо этого:

from openpyxl import load_workbook
wb = load_workbook("margin.xlsx")

Использование wb = Workbook() создает новую книгу

...