Appliquer différents types de mise en forme conditionnelle à Excel avec Python

2024-01-25 07:21:26

La mise en forme conditionnelle est une fonctionnalité de Microsoft Excel qui vous permet d'appliquer des règles de mise en forme aux cellules en fonction de conditions ou de critères spécifiques. Ces conditions peuvent être basées sur des valeurs de cellule, des formules ou d'autres critères spécifiés. La mise en forme conditionnelle vous permet de modifier dynamiquement l'apparence des cellules, telle que la couleur de la police, la couleur de l'arrière-plan des cellules, les bordures et les barres de données, pour mettre en évidence ou souligner visuellement certains points de données. Dans ce blog, nous explorerons comment appliquer une mise en forme conditionnelle à Excel à l'aide de Python.

Nous aborderons certains types de règles de mise en forme conditionnelle couramment utilisés dans Excel :

Bibliothèque Python pour appliquer une mise en forme conditionnelle à Excel

Pour appliquer une mise en forme conditionnelle aux fichiers Excel à l'aide de Python, nous devons installer un module Python prenant en charge cette fonctionnalité. Dans cet article de blog, nous utiliserons la bibliothèque Spire.XLS for Python , qui offre un ensemble complet de fonctions et de propriétés spécialement conçues pour appliquer des règles de mise en forme conditionnelle aux fichiers Excel en fonction de divers critères tels que les valeurs de cellule, les formules, etc.

Pour installer Spire.XLS for Python, vous pouvez exécuter la commande pip suivante :

pip install Spire.XLS

Mettre en surbrillance les règles de cellule

Les règles de mise en évidence des cellules sont un type de mise en forme conditionnelle dans Excel qui vous permet de mettre en évidence des cellules en fonction de leurs valeurs. Vous pouvez définir des conditions telles que supérieur à, linférieur à, égal à, entre et plus pour déterminer quelles cellules doivent être formatées. Vous pouvez choisir des options de formatage telles que la couleur de la police, la couleur d’arrière-plan et les bordures.

Voici un exemple qui montre comment mettre en surbrillance les cellules contenant des valeurs supérieures ou inférieures à une valeur spécifique dans Excel en utilisant Python et Spire.XLS for Python :

  • Python
from spire.xls import *
from spire.xls.common import *

# Create an object of the Workbook class
workbook = Workbook()
# Load an Excel file
workbook.LoadFromFile("Example1.xlsx")
# Get the first worksheet
sheet = workbook.Worksheets[0]

# Add a conditional format to the sheet
conditionalFormat = sheet.ConditionalFormats.Add()
# Specify the cell range to apply the conditional format
conditionalFormat.AddRange(sheet.Range["C2:C11"])

# Create the first condition to highlight cells containing values greater than a specific value
condition1 = conditionalFormat.AddCondition()
condition1.FormatType = ConditionalFormatType.CellValue
condition1.FirstFormula = "90"
condition1.Operator = ComparisonOperatorType.Greater
condition1.BackColor = Color.get_Yellow()

# Create the second condition to highlight cells containing values less than a specific value
condition2 = conditionalFormat.AddCondition()
condition2.FormatType = ConditionalFormatType.CellValue
condition2.FirstFormula = "80"
condition2.Operator = ComparisonOperatorType.Less
condition2.BackColor = Color.get_LightGreen()

# Save the result file
workbook.SaveToFile("HighlightCellRules.xlsx", ExcelVersion.Version2016)
workbook.Dispose()

Apply Various Types of Conditional Formatting to Excel with Python

En plus de mettre en surbrillance les cellules dont les valeurs sont supérieures ou inférieures à une valeur spécifique, Spire.XLS for Python prend également en charge de nombreuses autres options. Par exemple, vous pouvez mettre en surbrillance les cellules avec des valeurs en double ou uniques, mettre en surbrillance les cellules avec des dates comprises dans une période spécifiée période de temps, et bien d’autres encore.

Voici un exemple qui montre comment mettre en surbrillance les cellules avec des valeurs en double ou uniques dans Excel en utilisant Python et Spire.XLS for Python:

  • Python
from spire.xls import *
from spire.xls.common import *

# Create an object of the Workbook class
workbook = Workbook()
# Load an Excel file
workbook.LoadFromFile("Example1.xlsx")
# Get the first worksheet
sheet = workbook.Worksheets[0]

# Add a conditional format to the worksheet
conditionalFormat = sheet.ConditionalFormats.Add()
# Specify the cell range to apply the conditional format
conditionalFormat.AddRange(sheet.Range["C2:C11"])

# Create the first condition to highlight cells containing duplicate values
condition1 = conditionalFormat.AddCondition()
condition1.FormatType = ConditionalFormatType.DuplicateValues
condition1.BackColor = Color.get_IndianRed()

# Create the second condition to highlight cells containing unique values
condition2 = conditionalFormat.AddCondition()
condition2.FormatType = ConditionalFormatType.UniqueValues
condition2.BackColor = Color.get_Yellow()

# Save the result file
workbook.SaveToFile("HighlightCellRules.xlsx", ExcelVersion.Version2016)
workbook.Dispose()

Apply Various Types of Conditional Formatting to Excel with Python

Voici un exemple qui montre comment mettre en surbrillance les cellules avec des dates qui se situent dans une période de temps spécifique dans Excel en utilisant Python et Spire.XLS for Python:

  • Python
from spire.xls import *
from spire.xls.common import *

# Create an object of the Workbook class
workbook = Workbook()
# Load an Excel file
workbook.LoadFromFile("Example2.xlsx")
# Get the first worksheet
sheet = workbook.Worksheets[0]

# Add a conditional format to the worksheet
conditionalFormat = sheet.ConditionalFormats.Add()
# Specify the cell range to apply the conditional format
conditionalFormat.AddRange(sheet.Range["B2:B9"])

# Create a condition to highlight cells with dates that fall within a specific time period
condition = conditionalFormat.AddTimePeriodCondition(TimePeriodType.Last7Days)
condition.BackColor = Color.get_Yellow()

# Save the result file
workbook.SaveToFile("HighlightCellRules.xlsx", ExcelVersion.Version2016)
workbook.Dispose()

Apply Various Types of Conditional Formatting to Excel with Python

Règles supérieures ou inférieures

Les règles haut/bas sont un autre type de mise en forme conditionnelle dans Excel qui vous permet de mettre en évidence les cellules contenant les valeurs les plus élevées ou les plus basses dans une plage. Vous pouvez spécifier le nombre de valeurs supérieures ou inférieures à mettre en évidence, et Excel appliquera automatiquement le formatage en fonction de la règle sélectionnée.

Voici un exemple qui montre comment mettre en surbrillance les cellules contenant les valeurs les mieux classées ou les moins bien classées dans Excel en utilisant Python et Spire.XLS for Python:

  • Python
from spire.xls import *
from spire.xls.common import *

# Create an object of the Workbook class
workbook = Workbook()
# Load an Excel file
workbook.LoadFromFile("Example1.xlsx")
# Get the first worksheet
sheet = workbook.Worksheets[0]

# Add a conditional format to the worksheet
conditionalFormat = sheet.ConditionalFormats.Add()
# Specify the cell range to apply the conditional format
conditionalFormat.AddRange(sheet.Range["C2:C11"])

# Add the first condition to highlight the top 2 ranked values
condition1 = conditionalFormat.AddTopBottomCondition(TopBottomType.Top, 2)
condition1.BackColor = Color.get_MediumPurple()

# Add the second condition to highlight the bottom 2 ranked values
condition2 = conditionalFormat.AddTopBottomCondition(TopBottomType.Bottom, 2)
condition2.BackColor = Color.get_LightBlue()

# Save the result file
workbook.SaveToFile("TopOrBottomRules.xlsx", ExcelVersion.Version2016)
workbook.Dispose()

Apply Various Types of Conditional Formatting to Excel with Python

En plus de mettre en évidence les cellules contenant les valeurs les plus hautes ou les plus basses, Spire.XLS for Python est également capable de mettre en évidence les cellules avec des valeurs supérieures ou inférieures à la valeur moyenne dans Excel. Vous pouvez vous référer à l'exemple suivant :

  • Python
from spire.xls import *
from spire.xls.common import *

# Create an object of the Workbook class
workbook = Workbook()
# Load an Excel file
workbook.LoadFromFile("Example1.xlsx")
# Get the first worksheet
sheet = workbook.Worksheets[0]

# Add a conditional format to the worksheet
conditionalFormat1 = sheet.ConditionalFormats.Add()
# Specify the cell range to apply the conditional format
conditionalFormat1.AddRange(sheet.Range["C2:C11"])

# Create a condition to highlight cells with values below the average
condition1 = conditionalFormat1.AddAverageCondition(AverageType.Below)
condition1.BackColor = Color.get_SkyBlue()

# Add a conditional format to the worksheet
conditionalFormat2 = sheet.ConditionalFormats.Add()
# Specify the cell range to apply the conditional format
conditionalFormat2.AddRange(sheet.Range["C2:C11"])

# Create a condition to highlight cells with values above the average
condition2 = conditionalFormat2.AddAverageCondition(AverageType.Above)
condition2.BackColor = Color.get_Orange()

# Save the result file
workbook.SaveToFile("HighlightValuesAboveOrBelowAverage.xlsx", ExcelVersion.Version2016)
workbook.Dispose()

Apply Various Types of Conditional Formatting to Excel with Python

Barres de données

Les barres de données sont une représentation visuelle de la mise en forme conditionnelle dans Excel. Ils créent des barres horizontales dans les cellules qui représentent visuellement les valeurs relatives des données. La longueur de la barre correspond à la valeur dans la cellule, permettant une comparaison facile des points de données.

Voici un exemple qui montre comment créer des barres de données dans Excel en utilisant Python et Spire.XLS for Python:

  • Python
from spire.xls import *
from spire.xls.common import *

# Create an object of the Workbook class
workbook = Workbook()
# Load an Excel file
workbook.LoadFromFile("Example1.xlsx")
# Get the first worksheet
sheet = workbook.Worksheets[0]

# Add a conditional format to the worksheet
conditionalFormat = sheet.ConditionalFormats.Add()
# Specify the cell range to apply the conditional format
conditionalFormat.AddRange(sheet.Range["C2:C11"])

# Add a condition and set its format type to DataBar
condition = conditionalFormat.AddCondition()
condition.FormatType = ConditionalFormatType.DataBar
# Set fill effect for data bars
# condition.DataBar.BarFillType = DataBarFillType.DataBarFillGradient
# Set bar color
condition.DataBar.BarColor = Color.get_SkyBlue()

# Save the result file
workbook.SaveToFile("DataBars.xlsx", ExcelVersion.Version2016)
workbook.Dispose()

Apply Various Types of Conditional Formatting to Excel with Python

Échelles de couleurs

Les échelles de couleurs sont un type de mise en forme conditionnelle qui applique des dégradés de couleurs aux cellules en fonction de leurs valeurs. Excel utilise une plage de couleurs pour représenter la distribution des valeurs dans une plage de cellules sélectionnée. Les valeurs plus élevées se voient attribuer une couleur, tandis que les valeurs inférieures se voient attribuer une autre couleur, avec des nuances intermédiaires pour les valeurs intermédiaires. Les échelles de couleurs fournissent une représentation visuelle de la distribution des données, vous permettant d'identifier facilement les valeurs élevées et faibles, ainsi que le positionnement relatif des valeurs dans l'ensemble de données.

Voici un exemple qui montre comment créer des échelles de couleurs dans Excel en utilisant Python et Spire.XLS for Python:

  • Python
from spire.xls import *
from spire.xls.common import *

# Create an object of the Workbook class
workbook = Workbook()
# Load an Excel file
workbook.LoadFromFile("Example1.xlsx")
# Get the first worksheet
sheet = workbook.Worksheets[0]

# Add a conditional format to the worksheet
conditionalFormat = sheet.ConditionalFormats.Add()
# Specify the cell range to apply the conditional format
conditionalFormat.AddRange(sheet.Range["C2:C11"])

# Add a condition and set its format type to ColorScale
condition = conditionalFormat.AddCondition()
condition.FormatType = ConditionalFormatType.ColorScale

# Save the result file
workbook.SaveToFile("ColorScales.xlsx", ExcelVersion.Version2016)
workbook.Dispose()

Apply Various Types of Conditional Formatting to Excel with Python

Jeux d'icônes

Les jeux d'icônes sont un type de mise en forme conditionnelle qui utilise des icônes visuelles, telles que des flèches, des symboles ou des feux de signalisation, pour représenter différentes conditions ou valeurs dans les cellules. Excel fournit des ensembles prédéfinis d'icônes que vous pouvez appliquer en fonction de critères ou de plages de valeurs spécifiques. Par exemple, vous pouvez utiliser des icônes en forme de flèche pour indiquer si les valeurs augmentent ou diminuent, ou utiliser des icônes de feux de signalisation pour représenter l'état de certaines mesures. Les jeux d'icônes offrent un moyen visuellement intuitif d'interpréter et de comparer les données en fonction des icônes attribuées.

Voici un exemple qui montre comment créer des jeux d'icônes dans Excel en utilisant Python et Spire.XLS for Python:

  • Python
from spire.xls import *
from spire.xls.common import *

# Create an object of the Workbook class
workbook = Workbook()
# Load an Excel file
workbook.LoadFromFile("Example3.xlsx")
# Get the first worksheet
sheet = workbook.Worksheets[0]

# Add a conditional format to the worksheet
conditionalFormat = sheet.ConditionalFormats.Add()
# Specify the cell range to apply the conditional format
conditionalFormat.AddRange(sheet.Range["A3:R3"])

# Add a condition and set its format type to IconSet
condition = conditionalFormat.AddCondition()
condition.FormatType = ConditionalFormatType.IconSet
# Set the type of icon sets to ThreeArrows
condition.IconSet.IconSetType = IconSetType.ThreeArrows

# Save the result file
workbook.SaveToFile("IconSets.xlsx", ExcelVersion.Version2013)
workbook.Dispose()

Apply Various Types of Conditional Formatting to Excel with Python

Règles basées sur des formules

La mise en forme conditionnelle basée sur des formules vous offre la possibilité de créer des règles personnalisées à l'aide de formules. Vous pouvez définir des conditions complexes en utilisant des fonctions, des opérateurs et des références de cellule. Cela permet un formatage hautement personnalisé basé sur des calculs ou des comparaisons spécifiques.

Voici un exemple qui montre comment appliquer une mise en forme conditionnelle basée sur une formule à Excel en utilisant Python et Spire.XLS for Python:

  • Python
from spire.xls import *
from spire.xls.common import *

# Create an object of the Workbook class
workbook = Workbook()
# Load an Excel file
workbook.LoadFromFile("Example1.xlsx")
# Get the first worksheet
sheet = workbook.Worksheets[0]

# Add a conditional format to the worksheet
conditionalFormat = sheet.ConditionalFormats.Add()
# Specify the cell range to apply the conditional format
conditionalFormat.AddRange(sheet.Range["A2:C11"])

# Add a condition and set its format type to Formula
condition = conditionalFormat.AddCondition()
condition.FormatType = ConditionalFormatType.Formula
condition.FirstFormula = "=MOD(ROW(),2)=1"
condition.BackColor = Color.get_LightGray()

# Save the result file
workbook.SaveToFile("FormulaBasedRules.xlsx", ExcelVersion.Version2016)
workbook.Dispose()

Apply Various Types of Conditional Formatting to Excel with Python

Obtenez une licence gratuite

Pour profiter pleinement des capacités de Spire.XLS for Python sans aucune limitation d'évaluation, vous pouvez demander une licence d'essai gratuite de 30 jours.

Conclusion

Ce blog explique comment appliquer différents types de mise en forme conditionnelle à Excel à l'aide de Spire.XLS for Python. Si vous avez des questions, n'hésitez pas à les publier sur notre forum ou à les envoyer à notre équipe d'assistance par e-mail.

Rubriques connexes