
Die Datenvalidierung in Excel stellt sicher, dass Nutzer nur gültige Daten in Arbeitsblättern eingeben. Bei der Gestaltung von Formularen, der Datensammlung oder dem Erstellen von Finanzmodellen helfen Datenvalidierungen, Struktur aufrechtzuerhalten und Benutzerfehler zu minimieren. In diesem Beitrag zeigen wir Ihnen, wie Sie die Datenvalidierung in Excel programmgesteuert mit C# anwenden können.
Dieser Artikel behandelt die folgenden Themen:
- C# Excel-Datenvalidierungsbibliothek
- Erstellen Sie eine Dropdown-Liste in Excel mithilfe von C#
- Restrict whole number input in Excel using C#
- Datumbereichsvalidierung in Excel mit C#
- Formelbasierte Datenvalidierung in Excel
- Verarbeiten Sie ungültige Daten mit Fehlermeldungen in Excel
- Kostenlose Ressourcen
C# Excel Datenvalidierungsbibliothek
Die Datenvalidierung stellt sicher, dass Benutzer gültige und erwartete Eingaben in Excel-Tabellenkalkulationen machen. Wir werden die Aspose.Cells for .NET API verwenden, um verschiedene Arten von Datenvalidierung in Excel hinzuzufügen. Sie bietet einen leistungsstarken und flexiblen Ansatz, um Regeln wie Dropdown-Listen, numerische Bereiche, Datumsgrenzen und benutzerdefinierte Formeln zu definieren, ohne Microsoft Excel zu benötigen.
Installieren Sie das Aspose.Cells for .NET über das NuGet Paket in Ihrem Projekt:
PM> Install-Package Aspose.Cells
Dann importiere den relevanten Namensraum:
using Aspose.Cells;
Create Dropdown List Validation in Excel using C#
Sie können die Benutzereingaben auf eine vordefinierte Auswahl von Optionen beschränken, indem Sie eine Dropdown-Listenvalidierung in Excel erstellen. Dies stellt konsistente Werte sicher, die besonders in Formularen oder Vorlagen nützlich sind.
Befolgen Sie diese Schritte, um eine Dropdown-Liste in Excel mit C# zu erstellen:
- Erstellen Sie ein neues
Workbook
Objekt. - Greifen Sie auf das erste
worksheet
über seinen Index zu. - Definiere das Ziel
CellArea
zur Validierung. - Greifen Sie auf die Validierungs Sammlung des Arbeitsblatts zu.
- Fügen Sie eine neue Validierung mit der
Add()
-Methode hinzu. - Setze den Validierungstyp auf
ValidationType.List
. - Definieren Sie die Dropdown-Optionen mit der
Formula1
-Eigenschaft (durch Kommas getrennt). - Fügen Sie den Zellbereich zur Validierung mithilfe der
AddArea()
-Methode hinzu. - Speichern Sie die Arbeitsmappe, um die validierte Excel-Datei zu generieren.
Hier ist das C#-Codebeispiel, das diese Schritte implementiert:
// Erstellen Sie eine neue Excel-Arbeitsmappe
var workbook = new Workbook();
// Zugriff auf das erste Arbeitsblatt in der Arbeitsmappe
var sheet = workbook.Worksheets[0];
// Definieren Sie den Zielzellenbereich für die Validierung (A1 in diesem Fall)
var area = new CellArea
{
StartRow = 0, // Row index starts from 0 (Row 1)
EndRow = 0, // Apply to a single row
StartColumn = 0, // Column index starts from 0 (Column A)
EndColumn = 0 // Apply to a single column
};
// Greifen Sie auf die Validierungsammlung des Arbeitsblatts zu
var validations = sheet.Validations;
// Fügen Sie einen neuen Validierungseintrag für den angegebenen Zellbereich hinzu
int index = validations.Add(area);
var validation = validations[index];
// Setze den Validierungs-Typ auf eine Dropdown-Liste
validation.Type = ValidationType.List;
// Definieren Sie die zulässigen Listenelemente (durch Kommas getrennte Werte)
validation.Formula1 = "Red,Green,Blue";
// Setzen Sie die Eingabemeldung, die angezeigt wird, wenn die Zelle ausgewählt ist.
validation.InputMessage = "Select a color from the list.";
// Setzen Sie die Fehlermeldung, die angezeigt wird, wenn ungültige Daten eingegeben werden.
validation.ErrorMessage = "Only Red, Green, or Blue are allowed.";
// Aktivieren Sie die Anzeige der Fehlermeldung
validation.ShowError = true;
// Wenden Sie den definierten Bereich auf die Validierung an.
validation.AddArea(area);
// Speichern Sie die Arbeitsmappe im angegebenen Dateipfad.
workbook.Save("dropdown-validation.xlsx");

Erstellen einer Dropdown-Listenvalidierung in Excel mit C#
Restict to Whole Numbers in Excel unter Verwendung von C#
Die Validierung von Ganzzahlen stellt sicher, dass Benutzer nur gültige ganze Zahlen in Excel eingeben, was ideal für Mengenfelder, Altersangaben oder Budgetblätter ist, in denen Dezimalzahlen oder Text nicht akzeptabel sind.
Lass uns sagen, dass du eine Zelle so einschränken möchtest, dass sie nur Zahlen zwischen 1 und 100 akzeptiert. Ohne diese Regel könnten Benutzer versehentlich ungültige Eingaben wie 150 oder abc eingeben, was zu Berechnungsfehlern oder logischen Problemen in deinem Tabellenblatt führt.
Mit Aspose.Cells for .NET können Sie diese Validierungsregel programmgesteuert in C# durchsetzen, ohne sie manuell in Excel konfigurieren zu müssen.
Der folgende Codeausschnitt zeigt, wie man Benutzer einschränken kann, nur die erlaubten Werte einzugeben:
using Aspose.Cells;
// Erstellen Sie ein neues Excel-Arbeitsbuch
var workbook = new Workbook();
// Greifen Sie auf das erste Arbeitsblatt in der Arbeitsmappe zu.
var sheet = workbook.Worksheets[0];
// Definieren Sie den Zielbereich der Zelle — B2 (Zeile 1, Spalte 1)
var area = new CellArea
{
StartRow = 1,
EndRow = 1,
StartColumn = 1,
EndColumn = 1
};
// Zugriff auf die Validierungssammlung des Arbeitsblatts
var validations = sheet.Validations;
// Fügen Sie eine neue Validierung hinzu und erhalten Sie ihren Index.
int index = validations.Add(area);
// Rufen Sie das Validierungsobjekt mit dem Index ab.
var validation = validations[index];
// Setze den Validierungstyp auf Ganzzahl (nur ganze Zahlen erlaubt)
validation.Type = ValidationType.WholeNumber;
// Setze den Operator auf Zwischen
validation.Operator = OperatorType.Between;
// Definieren Sie den gültigen Bereich: 1 bis 100
validation.Formula1 = "1";
validation.Formula2 = "100";
// Setzen Sie die Fehlermeldung, die erscheint, wenn ungültige Daten eingegeben werden.
validation.ErrorMessage = "Enter a number between 1 and 100.";
// Aktivieren Sie die Anzeige des Fehleralarms, wenn die Validierung fehlschlägt.
validation.ShowError = true;
// (Optional if not using Add(area) earlier) Fügen Sie den Bereich explizit zur Validierung hinzu
validation.AddArea(area);
// Speichern Sie die Arbeitsmappe in einer Datei
workbook.Save("numbers-validation.xlsx");

Restrict to Whole Numbers in Excel using C#
Wenden Sie die Datumsbereichsvalidierung in Excel mit C# an.
Die Datumsvalidierung hilft Ihnen sicherzustellen, dass Benutzer nur gültige Daten eingeben. Es ist nützlich in Planungstools, Anwesenheitsaufzeichnungen, Buchungsblättern und in jedem Szenario, in dem Sie Daten innerhalb eines bestimmten Bereichs benötigen.
Zum Beispiel, stellen Sie sich vor, Sie erstellen eine Projektplanungs-Vorlage und möchten die Benutzer daran hindern, Daten außerhalb des Jahres 2024 einzugeben. Wenn Benutzer ein Datum außerhalb dieses Bereichs (wie 2023 oder 2025) eingeben dürfen, könnte dies Formeln beschädigen oder inkonsistente Aufzeichnungen erstellen.
Aspose.Cells for .NET macht es einfach, Datumsvalidierungen auf bestimmte Zellen anzuwenden, sodass Benutzer nur Daten eingeben können, die Ihren Kriterien entsprechen.
Der folgende Codeausschnitt zeigt, wie Sie sicherstellen können, dass Benutzer nur Daten zwischen dem 1. Januar 2024 und dem 31. Dezember 2024 eingeben können. Alles außerhalb des Bereichs löst einen Fehler aus, der Ihnen hilft, sauberere, genauere Daten in Ihrer Tabelle zu behalten.
using Aspose.Cells;
// Erstellen Sie eine neue Excel-Arbeitsmappe.
var workbook = new Workbook();
// Greifen Sie auf das erste Arbeitsblatt in der Arbeitsmappe zu.
var sheet = workbook.Worksheets[0];
// Definieren Sie den Zellbereich, um die Validierung anzuwenden — C3 (Zeile 2, Spalte 2)
var area = new CellArea
{
StartRow = 2,
EndRow = 2,
StartColumn = 2,
EndColumn = 2
};
// Greifen Sie auf die Validierungen-Sammlung des Arbeitsblatts zu.
var validations = sheet.Validations;
// Fügen Sie eine neue Validierung hinzu und erhalten Sie deren Index.
int index = validations.Add(area);
// Rufen Sie das Validierungsobjekt ab
var validation = validations[index];
// Setze den Validierungstyp auf Datum
validation.Type = ValidationType.Date;
// Setze den Operator auf Zwischen (Start und Enddaten)
validation.Operator = OperatorType.Between;
// Spezifizieren Sie den gültigen Datumsbereich: 1. Januar 2024 bis 31. Dezember 2024
validation.Formula1 = "2024-01-01";
validation.Formula2 = "2024-12-31";
// Setzen Sie die Fehlermeldung, die angezeigt werden soll, wenn das Datum außerhalb des zulässigen Bereichs liegt.
validation.ErrorMessage = "Date must be within the year 2024.";
// Aktivieren Sie die Anzeige der Fehlermeldung.
validation.ShowError = true;
// Wenden Sie das Gebiet erneut an, um sicherzustellen, dass die Validierung korrekt gebunden ist.
validation.AddArea(area);
// Speichern Sie die Arbeitsmappe am angegebenen Speicherort.
workbook.Save("date-validation.xlsx");
Verwenden Sie formula-basierte Validierung in Excel mit C#
Manchmal sind einfache Dropdowns oder feste Zahlenbereiche nicht ausreichend, insbesondere wenn Ihre Regeln von den Werten in anderen Zellen abhängen. Mit formelbasierter Validierung können Sie benutzerdefinierte Regeln mithilfe von Excel-Formeln definieren. Diese Regeln können andere Zellen referenzieren und dynamisch bewerten, ob die Eingabe gültig ist. Zum Beispiel möchten Sie möglicherweise sicherstellen, dass der Wert in Zelle B1 immer größer ist als der Wert in A1. Dies ist ein häufiges Szenario bei Preisvergleichen, Wertungsblättern oder Datensequenzen.
Aspose.Cells for .NET unterstützt dieses Feature vollständig und ermöglicht es Ihnen, die Validierung mit benutzerdefinierten Formeln genau wie in Excel festzulegen.
Der folgende Codebeispiel zeigt, wie man formelbasierte Validierungen in Excel mit C# anwendet.
using Aspose.Cells;
// Erstellen Sie eine neue Excel-Arbeitsmappe
var workbook = new Workbook();
// Greifen Sie auf das erste Arbeitsblatt in der Arbeitsmappe zu.
var sheet = workbook.Worksheets[0];
// Definieren Sie den Zellenbereich für die Validierung – B1 (Zeile 0, Spalte 1)
var area = new CellArea
{
StartRow = 0,
EndRow = 0,
StartColumn = 1,
EndColumn = 1
};
// Greifen Sie auf die Validierungen der Arbeitsblätter-Sammlung zu.
var validations = sheet.Validations;
// Fügen Sie eine neue Validierung zur Sammlung hinzu und erhalten Sie ihren Index.
int index = validations.Add(area);
// Rufen Sie das Validierungsobjekt nach Index ab
var validation = validations[index];
// Setzen Sie den Validierungstyp auf Benutzerdefiniert (wird für formelbasierte Regeln verwendet)
validation.Type = ValidationType.Custom;
// Setze die benutzerdefinierte Formel: B1 muss größer als A1 sein
validation.Formula1 = "=B1>A1";
// Definieren Sie die Fehlermeldung, die angezeigt wird, wenn die Validierung fehlschlägt.
validation.ErrorMessage = "Value in B1 must be greater than A1.";
// Aktivieren Sie die Anzeige des Fehlerwarnhinweises bei ungültiger Eingabe.
validation.ShowError = true;
// Fügen Sie die Fläche hinzu, um sicherzustellen, dass sie durch die Validierung abgedeckt ist.
validation.AddArea(area);
// Speichern Sie die Arbeitsmappe im angegebenen Dateipfad.
workbook.Save("formula-validation.xlsx");
Konfigurieren von Eingabe und Fehlermeldungen in Excel mithilfe von C#
Das Anwenden von Datenvalidierung ist nur ein Teil der Lösung. Die Benutzer zu führen, wenn sie falsche Daten eingeben, ist ebenso wichtig, und dabei spielen benutzerdefinierte Warnungen und Nachrichten eine Schlüsselrolle.
Aspose.Cells for .NET ermöglicht es Ihnen, hilfreiche Eingabemeldungen und Fehlermeldungen einzurichten, die erscheinen, wenn Benutzer eine Zelle auswählen oder ungültige Daten eingeben. Diese Nachrichten verbessern die Benutzererfahrung, reduzieren Verwirrung und machen Ihre Excel-Vorlagen professioneller.
Zum Beispiel, wenn ein Benutzer auf eine Zelle klickt, können Sie ein Tooltip wie anzeigen
Es sind nur Werte von 1 bis 100 erlaubt.
Und wenn sie einen falschen Wert eingeben, kann Excel ein Dialogfeld anzeigen, das sagt:
Ungültiger Eintrag: Bitte geben Sie eine Zahl zwischen 1 und 100 ein.
Sie können auch anpassen, wie Excel auf ungültige Eingaben reagiert, indem Sie wählen, ob der Benutzer vollständig blockiert werden soll (Stop
), ob er mit einer Warnung fortfahren darf (Warning
) oder ob einfach eine Informationsmeldung angezeigt werden soll (Information
).
Befolge diese Schritte, um Validierungsbenachrichtigungen mit C# zu konfigurieren:
- Nachdem Sie die Validierungsregel eingerichtet haben, setzen Sie
InputTitle
undInputMessage
, um Hilfetexte anzuzeigen, wenn ein Benutzer die Zelle auswählt. - Definieren Sie den
ErrorTitle
und dieErrorMessage
, um zu erklären, was schiefgelaufen ist, wenn die Validierung fehlschlägt. - Wählen Sie einen
AlertStyle
— Optionen sindStop
,Warning
undInformation
. - Setzen Sie
ShowError
auftrue
, um die Validierungswarnung zu aktivieren. - Speichern Sie die Arbeitsmappe.
Diese Warnungen machen Ihre Tabelle intuitiver und benutzerfreundlicher, insbesondere wenn Sie Vorlagen erstellen, die andere häufig verwenden oder wiederverwenden.
var workbook = new Workbook();
var sheet = workbook.Worksheets[0];
// Bereich für die Validierung einrichten — auf Zelle C1 anwenden
var area = new CellArea
{
StartRow = 0,
EndRow = 0,
StartColumn = 2, // Column C = 2
EndColumn = 2
};
// Fügen Sie die Validierung hinzu.
int index = sheet.Validations.Add(area);
var validation = sheet.Validations[index];
validation.Type = ValidationType.Custom;
// Diese Formel ergibt immer FALSCH.
validation.Formula1 = "=FALSE";
// Richten Sie Eingabe und Fehlermeldungen ein
validation.InputTitle = "Input Restricted";
validation.InputMessage = "Try entering anything to see the validation.";
validation.ErrorTitle = "Invalid Input";
validation.ErrorMessage = "You triggered this validation error successfully!";
validation.AlertStyle = ValidationAlertType.Stop;
validation.ShowError = true;
validation.ShowInput = true;
// Anwendung der Validierung auf das Gebiet
validation.AddArea(area);
// Speichern Sie die validierte Arbeitsmappe
workbook.Save("D:\\Files\\validated_with_alerts.xlsx");
Die Warnungen verbessern die Benutzerfreundlichkeit und leiten die Benutzer klar an, was sie eingeben sollen.

Konfigurieren Sie Eingabe und Fehlermeldungen in Excel mit C#
Probier es kostenlos aus
Holen Sie sich eine freie vorübergehende Lizenz, um die vollen Funktionen von Aspose.Cells for .NET ohne Einschränkungen zu testen.
Kostenlose Ressourcen
Erforschen Sie mehr über Excel-Automatisierung und -Validierung mit diesen Ressourcen:
Schlussfolgerung
In diesem Artikel haben wir gezeigt, wie man die Datenvalidierung in Excel mit C# und Aspose.Cells for .NET implementiert. Von Dropdowns bis hin zu benutzerdefinierten Formeln können Sie intelligente und fehlerfreie Tabellenkalkulationen erstellen, ohne auf Excel selbst angewiesen zu sein.
Wenn Sie Fragen oder Feedback haben, zögern Sie bitte nicht, diese in unserem free support forum zu posten. Wir würden uns freuen, Ihnen zu helfen!