Appliquer le formatage conditionnel dans les feuilles de calcul
Cet article est conçu pour fournir une compréhension détaillée de comment ajouter un formatage conditionnel à une plage de cellules dans une feuille de calcul.
Le formatage conditionnel est une fonctionnalité avancée de Microsoft Excel qui vous permet d’appliquer des formats à une plage de cellules et d’avoir ce formatage modifié en fonction de la valeur de la cellule ou de la valeur d’une formule. Par exemple, l’arrière-plan d’une cellule peut être rouge pour mettre en évidence une valeur négative, ou la couleur du texte pourrait être verte pour une valeur positive. Lorsque la valeur de la cellule répond à la condition de formatage, le format est appliqué. Si la valeur de la cellule ne répond pas à la condition de formatage, le formatage par défaut de la cellule est utilisé.
Il est possible d’appliquer un formatage conditionnel avec l’automatisation Microsoft Office, mais cela présente des inconvénients. Il y a plusieurs raisons et problèmes impliqués : par exemple, la sécurité, la stabilité, la scalabilité et la vitesse. La principale raison de trouver une autre solution est que Microsoft recommande fortement de ne pas utiliser l’automatisation Office pour les solutions logicielles.
Cet article montre comment créer une application console, ajouter un formatage conditionnel sur des cellules avec quelques lignes de code les plus simples à l’aide de l’API Aspose.Cells.
Utilisation d’Aspose.Cells pour Appliquer un Formatage Conditionnel Basé sur la Valeur de la Cellule
- Téléchargez et Installez Aspose.Cells.
- Téléchargez Aspose.Cells for Node.js via C++.
- Installez-le sur votre ordinateur de développement. Tous les composants Aspose, une fois installés, fonctionnent en mode d’évaluation. Le mode d’évaluation n’a pas de limite de temps et n’injecte que des filigranes dans les documents produits.
- Créer un projet. Commencez votre projet Node.js en l’initialisant. Cet exemple crée une application console Node.js.
- Ajouter des références.
Ajoutez une référence à Aspose.Cells à votre projet, par exemple en requérant le package comme suit :
const AsposeCells = require("aspose.cells.node");
- ** Appliquer une mise en forme conditionnelle en fonction de la valeur de la cellule **. Voici le code utilisé pour réaliser la tâche. Il applique un formatage conditionnel sur une cellule.
const path = require("path"); | |
const AsposeCells = require("aspose.cells.node"); | |
// The path to the documents directory. | |
const dataDir = path.join(__dirname, "data"); | |
const outputFilePath = path.join(dataDir, "output.out.xls"); | |
// Create directory if it is not already present. | |
const fs = require("fs"); | |
if (!fs.existsSync(dataDir)) { | |
fs.mkdirSync(dataDir); | |
} | |
// Instantiating a Workbook object | |
const workbook = new AsposeCells.Workbook(); | |
const sheet = workbook.getWorksheets().get(0); | |
// Adds an empty conditional formatting | |
const index = sheet.getConditionalFormattings().getCount(); | |
// Get the collection of conditional formatting | |
const fcs = sheet.getConditionalFormattings(); | |
// Sets the conditional format range. | |
const ca = AsposeCells.CellArea.createCellArea(0, 0, 0, 0); | |
fcs.addArea(ca); | |
// Adds condition. | |
const conditionIndex = fcs.addCondition(AsposeCells.FormatConditionType.CellValue, AsposeCells.OperatorType.Between, "50", "100"); | |
// Sets the background color. | |
const fc = fcs.get(conditionIndex); | |
fc.getStyle().setBackgroundColor(AsposeCells.Color.Red); | |
// Saving the Excel file | |
workbook.save(outputFilePath, AsposeCells.SaveFormat.Auto); |
Lorsque le code ci-dessus est exécuté, le formatage conditionnel est appliqué à la cellule “A1” de la première feuille du fichier de sortie (output.xls). Le formatage conditionnel appliqué à A1 dépend de la valeur de la cellule. Si la valeur d’A1 est comprise entre 50 et 100, la couleur de fond est rouge en raison du formatage conditionnel appliqué.
Utilisation d’Aspose.Cells pour appliquer une mise en forme conditionnelle en fonction de la formule
- Appliquer une mise en forme conditionnelle en fonction de la formule (Extrait de code) Voici le code pour accomplir la tâche. Il applique une mise en forme conditionnelle sur B3.
const path = require("path"); | |
const AsposeCells = require("aspose.cells.node"); | |
// The path to the documents directory. | |
const dataDir = path.join(__dirname, "data"); | |
// Create directory if it is not already present. | |
const fs = require("fs"); | |
if (!fs.existsSync(dataDir)) { | |
fs.mkdirSync(dataDir); | |
} | |
// Instantiating a Workbook object | |
const workbook = new AsposeCells.Workbook(); | |
const sheet = workbook.getWorksheets().get(0); | |
// Adds an empty conditional formatting | |
const index = sheet.getConditionalFormattings().getCount(); | |
sheet.getConditionalFormattings().add(); | |
// Gets the conditional format collection | |
const fcs = sheet.getConditionalFormattings().get(index); | |
// Sets the conditional format range. | |
const ca = AsposeCells.CellArea.createCellArea(2, 1, 2, 1); | |
fcs.addArea(ca); | |
// Adds condition. | |
const conditionIndex = fcs.addCondition(AsposeCells.FormatConditionType.Expression); | |
// Sets the background color. | |
const fc = fcs.get(conditionIndex); | |
fc.setFormula1("=IF(SUM(B1:B2)>100,TRUE,FALSE)"); | |
fc.getStyle().setBackgroundColor(AsposeCells.Color.Red); | |
sheet.getCells().get("B3").setFormula("=SUM(B1:B2)"); | |
sheet.getCells().get("C4").putValue("If Sum of B1:B2 is greater than 100, B3 will have RED background"); | |
// Saving the Excel file | |
workbook.save(path.join(dataDir, "output.out.xls"), AsposeCells.SaveFormat.Auto); |
Lorsque le code ci-dessus est exécuté, le formatage conditionnel est appliqué à la cellule “B3” de la première feuille du fichier de sortie (output.xls). Le formatage dépend de la formule qui calcule la valeur de “B3” comme la somme de B1 et B2.