SpreadProcessing—Référencer une colonne/ligne entière pour une formule rapide
Avec la dernière version, R2 2022, nous avons ajouté la prise en charge de l’utilisation de références à des colonnes et des lignes entières pour la bibliothèque SpreadProcessing. Regardons de plus près.
Les formules sont l’un des outils les plus puissants fournis par une feuille de calcul. Lorsque vous faites référence à la plage requise pour une formule, une référence de cellule spécifique s’avère souvent moins pratique que nous le souhaiterions. C’est là que cette nouvelle fonctionnalité entre en jeu pour sauver la situation.
Supposons que nous voulions additionner tous les nombres de la première ligne de l’exemple de feuille de calcul suivant :
Comme vous pouvez le voir, la première ligne contient des nombres jusqu’à la colonne H. Nous pourrions utiliser une référence de cellule standard dans les formules telles que =SUM(A1:H1). Bien que cela fonctionne pour le moment, les données de la feuille de calcul pourraient subir des modifications à l’avenir, ce qui pourrait affecter la formule et la rendre erronée.
Avec l’ajout de toutes les références de colonne/ligne, nous pouvons facilement contourner ces problèmes potentiels. Voici à quoi ressemblerait la formule ci-dessus en utilisant une référence de ligne entière : =SUM(1:1). Vous pouvez définir la valeur d’une cellule à l’aide des références nouvellement prises en charge comme vous le feriez avec les références de cellule. Dans le code ci-dessous, nous créons un nouveau classeur, y ajoutons une nouvelle feuille de calcul, puis définissons la valeur de la cellule B1 sur la formule ci-dessus :
Workbook workbook = new Workbook();
Worksheet worksheet = workbook.Worksheets.Add();
worksheet.Cells[1,0].SetValue("=SUM(1:1)");
Il en va de même pour les colonnes. Outre le référencement de cellules spécifiques, vous pouvez désormais utiliser des références de colonne entières. Dans la feuille de calcul ci-dessus, la formule =SUM(A1:D3) renverrait le même résultat que =SUM(A:D).
Maintenir des performances élevées
Faire référence à des lignes et des colonnes entières peut signifier inclure des milliers, voire des millions de cellules dans une plage de cellules, ce qui peut avoir un impact sur les performances d’une feuille de calcul. Par conséquent, notre équipe a pris soin de maintenir la haute efficacité de la bibliothèque lors de la mise en œuvre de la fonctionnalité. Pas certain? Essayez-le vous-même et soyez agréablement surpris de la rapidité fulgurante de l’évaluation des formules.
Application pratique
Lors de l’introduction d’un nouvel outil, il est toujours plus facile de comprendre quand et comment l’utiliser en partageant un scénario de cas d’utilisation pratique où il est utile. Étant donné que notre équipe a récemment implémenté l’une des fonctionnalités les plus demandées, la mise en forme conditionnelle, nous pouvons l’utiliser comme contexte pour montrer certains avantages du référencement de lignes et de colonnes entières. Le formatage conditionnel nous aide à analyser visuellement les données en configurant un ensemble de règles de formatage à appliquer sur une plage spécifiée.
Dans le code ci-dessous, nous créons un petit tableau dans une feuille de calcul existante, puis ajoutons une ligne à sa droite, qui affiche la moyenne de chaque colonne. Au lieu de référencer les cellules de début et de fin de chaque colonne dans la formule utilisée, nous pouvons facilement référencer les colonnes entières :
var tableSize = 5;
for (int row = 0; row < tableSize; row++)
{
for (int col = 0; col < tableSize; col++)
{
worksheet.Cells[row, col].SetValue(row + col);
}
}
char asciiColSymbol="A";
for (int row = 0; row < tableSize ; row++)
{
string headerColumnText = string.Format("Average {0}:", asciiColSymbol);
worksheet.Cells[row, tableSize].SetValue(headerColumnText);
string formula = string.Format("=AVERAGE({0}:{1})", asciiColSymbol, asciiColSymbol);
worksheet.Cells[row, tableSize+1].SetValue(formula);
asciiColSymbol++;
}
DataBarValueContext dataBarValueContext = new DataBarValueContext();
DataBarRule dataBarRule = new DataBarRule(dataBarValueContext);
dataBarRule.FillColor = new ThemableColor(Colors.Aqua);
ConditionalFormatting conditionalFormatting = new ConditionalFormatting(dataBarRule);
var averageColumn=tableSize+1;
worksheet.Cells[0, averageColumn, averageColumn, averageColumn].AddConditionalFormatting(conditionalFormatting);
Ici, nous pouvons voir la feuille de calcul exportée avec les moyennes des colonnes :
N’oubliez pas de consulter notre nouvelle fonctionnalité de mise en forme conditionnelle plus en détail dans le Article de blog sur la mise en forme conditionnelle.
Partagez vos commentaires
Si vous n’avez pas encore essayé le traitement de documents Telerik, vous pouvez télécharger un essai gratuit et découvrez les fonctionnalités fantastiques prises en charge par les bibliothèques.
Si vous utilisez déjà les bibliothèques, nous sommes toujours impatients de recevoir vos commentaires. Ne soyez pas timide et laissez-nous un commentaire avec vos pensées ou votre visite notre portail de commentaires sur les bibliothèques de traitement de documents et faites-nous savoir si vous avez des suggestions ou avez besoin d’une fonctionnalité spécifique mise en œuvre.
Source link