So fügen Sie eine Top10 Bedingte Formatierung hinzu
Mögliche Verwendungsszenarien
Die Verwendung der Top 10-Bedingten Formatierung in Excel hilft, die leistungsstärksten Werte in einem Datensatz schnell hervorzuheben — nicht nur die tatsächlichen Top 10-Werte, sondern oft die Top N-Werte oder Top N% (Sie können wählen!).
- Trends und Ausreißer erkennen: Identifizieren Sie sofort die besten Performer (z.B. Top 10 Verkäufer, beste Noten, umsatzstärkste Monate). Erleichtert die Analyse ohne Daten zu sortieren.
- Datenvisualisierung: Fügt Farbcodierungen hinzu, die wichtige Datenpunkte visuell hervorheben. Hilft den Betrachtern des Tabellenblatts, die Schlüsselwerte auf einen Blick zu verstehen.
- Schnelle Vergleiche: Nützlich in Dashboards und Berichten, bei denen Sie Exzellenz oder Spitzen hervorheben möchten.
- Dynamische Aktualisierungen: Wenn sich Ihre Daten ändern, passt sich die bedingte Formatierung automatisch an, um die neuen Top-Werte widerzuspiegeln.
So fügen Sie Top10-Bedingte Formatierung mit Excel hinzu
Hier erfahren Sie Schritt für Schritt, wie Sie Top10-Bedingte Formatierung in Excel hinzufügen:
- Wählen Sie den Zellbereich aus, den Sie analysieren möchten. Zum Beispiel: Wählen Sie B2:B100, wenn Sie mit Punktzahlen oder Verkaufszahlen arbeiten.
- Gehen Sie zur Registerkarte Start im Excel-Band.
- Klicken Sie auf Bedingte Formatierung im Bereich styles.
- Bewegen Sie den Mauszeiger über Top/Bottom-Regeln im Dropdown.
- Klicken Sie auf Top 10 Elemente…
- Es erscheint ein Dialogfeld: Es sagt: Zellen formatieren, die zu den Top 10 gehören. Sie können die Zahl ändern (z.B. Top 5, Top 3, etc.). Wählen Sie ein Format (z.B. hellroter Hintergrund, fetter Text oder klicken Sie auf Benutzerdefiniertes Format für mehr Optionen).
- Klicken Sie auf OK
So fügen Sie Top10-Bedingte Formatierung mit Aspose.Cells for .NET hinzu
Aspose.Cells unterstützt vollständig die bedingte Formatierung, die von Microsoft Excel 2007 und neueren Versionen im XLSX-Format auf Zellen bei der Laufzeit bereitgestellt wird. Dieses Beispiel zeigt eine Übung für Top 10 bedingte Formatierung mit verschiedenen Attributsets.
private void TestTop10() | |
{ | |
// Instantiate a workbook object | |
Workbook book = new Workbook(); | |
// Create a worksheet object and get the first worksheet | |
Worksheet _sheet = book.Worksheets[0]; | |
AddTop10_1(_sheet); | |
AddTop10_2(_sheet); | |
AddTop10_3(_sheet); | |
AddTop10_4(_sheet); | |
book.Save(filePath + "Top10.xlsx"); | |
} | |
// This method implements a simple Top10 conditional formatting type. | |
private void AddTop10_1(Worksheet _sheet) | |
{ | |
FormatConditionCollection conds = GetFormatCondition("A17:C20", Color.Gray, _sheet); | |
int idx = conds.AddCondition(FormatConditionType.Top10); | |
FormatCondition cond = conds[idx]; | |
cond.Style.BackgroundColor = Color.Yellow; | |
cond.Style.Pattern = BackgroundType.Solid; | |
} | |
// This method implements another Top10 conditional formatting type. | |
private void AddTop10_2(Worksheet _sheet) | |
{ | |
FormatConditionCollection conds = GetFormatCondition("A21:C24", Color.Green, _sheet); | |
int idx = conds.AddCondition(FormatConditionType.Top10); | |
FormatCondition cond = conds[idx]; | |
cond.Style.BackgroundColor = Color.Pink; | |
cond.Style.Pattern = BackgroundType.Solid; | |
cond.Top10.IsBottom = true; | |
} | |
// This method implements another Top10 conditional formatting type with some custom attributes. | |
private void AddTop10_3(Worksheet _sheet) | |
{ | |
FormatConditionCollection conds = GetFormatCondition("A25:C28", Color.Orange, _sheet); | |
int idx = conds.AddCondition(FormatConditionType.Top10); | |
FormatCondition cond = conds[idx]; | |
cond.Style.BackgroundColor = Color.Blue; | |
cond.Style.Pattern = BackgroundType.Solid; | |
cond.Top10.IsPercent = true; | |
} | |
// This method implements another Top10 conditional formatting type with some custom attributes. | |
private void AddTop10_4(Worksheet _sheet) | |
{ | |
FormatConditionCollection conds = GetFormatCondition("A29:C32", Color.Gold, _sheet); | |
int idx = conds.AddCondition(FormatConditionType.Top10); | |
FormatCondition cond = conds[idx]; | |
cond.Style.BackgroundColor = Color.Green; | |
cond.Style.Pattern = BackgroundType.Solid; | |
cond.Top10.Rank = 3; | |
} | |
// This method adds formatted conditions. | |
private FormatConditionCollection GetFormatCondition(string cellAreaName, Color color, Worksheet _sheet) | |
{ | |
// Adds an empty conditional formattings | |
int index = _sheet.ConditionalFormattings.Add(); | |
// Get the formatted conditions | |
FormatConditionCollection formatConditions = _sheet.ConditionalFormattings[index]; | |
// Get the cell area calling the custom GetCellAreaByName method | |
CellArea area = GetCellAreaByName(cellAreaName); | |
// Add the formatted conditions cell area. | |
formatConditions.AddArea(area); | |
// Call the custom FillCell method | |
FillCell(cellAreaName, color, _sheet); | |
// Return the formatted conditions | |
return formatConditions; | |
} | |
// This method specifies the cell shading color for the conditional formattings cellarea range. | |
private void FillCell(string cellAreaName, Color color, Worksheet _sheet) | |
{ | |
CellArea area = GetCellAreaByName(cellAreaName); | |
int k = 0; | |
for (int i = area.StartColumn; i <= area.EndColumn; i++) | |
{ | |
for (int j = area.StartRow; j <= area.EndRow; j++) | |
{ | |
Cell c = _sheet.Cells[j, i]; | |
if (!color.IsEmpty) | |
{ | |
Style s = c.GetStyle(); | |
s.ForegroundColor = color; | |
s.Pattern = BackgroundType.Solid; | |
c.SetStyle(s); | |
} | |
// Set some random values to the cells in the cellarea range | |
int value = j + i + k; | |
c.PutValue(value); | |
k++; | |
} | |
} | |
} | |
// This method specifies the CellArea range (start row, start col, end row, end col etc.) | |
// For the conditional formatting | |
internal static CellArea GetCellAreaByName(string s) | |
{ | |
CellArea area = new CellArea(); | |
string[] strCellRange = s.Replace("$", "").Split(':'); | |
int column; | |
CellsHelper.CellNameToIndex(strCellRange[0], out area.StartRow, out column); | |
area.StartColumn = column; | |
if (strCellRange.Length == 1) | |
{ | |
area.EndRow = area.StartRow; | |
area.EndColumn = area.StartColumn; | |
} | |
else | |
{ | |
CellsHelper.CellNameToIndex(strCellRange[1], out area.EndRow, out column); | |
area.EndColumn = column; | |
} | |
return area; | |
} |