Table des matières
Installer avec Pip
pip install Spire.XLS
Liens connexes
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 :
- Mettre en surbrillance les règles de cellule
- Règles supérieures ou inférieures
- Barres de données
- Échelles de couleurs
- Jeux d'icônes
- Règles basées sur des formules
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()
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()
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()
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()
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()
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()
É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()
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()
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()
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.