VB .NET Lesen & Erstellen von Excel-Dateien (Code-Beispiel-Tutorial)
Entwickler benötigen einen reibungslosen und einfachen Ansatz für den Zugriff auf VB .NET Excel-Dateien. In dieser Anleitung werden wir IronXL verwenden, um VB dotnet Excel-Dateien zu lesen und auf alle Daten für unser Projekt zuzugreifen. Wir lernen, wie man Tabellenkalkulationen in allen Formaten erstellt( .xls", "xlsx", "csv" und "tsv")sowie das Einstellen von Zellstilen und das Einfügen von Daten mit VB.NET Excel-Programmierung.
Wie man Excel-Dateien in VB.NET liest
- VB.NET Read Excel C# Bibliothek herunterladen
- Excel-Dateien in VB.NET erstellen
- Daten in Arbeitsblatt einfügen
- Excel-Datei in VB.NET lesen
- Zugriff auf Daten aus WorkSheet
- Funktionen für Daten ausführen
Schritt 1
1. Excel für VB.NET Bibliothek
Holen Sie sich die IronXL Excel for VB.NET Bibliothek mitDLL herunterladen oderNuGet. IronXL ist unser Schritt 1 zum schnellen Zugriff auf Excel-Daten in unseren VB.NET-Projekten, und was wir für dieses Tutorial verwenden werden(frei für Entwicklung).
Install-Package IronXL.Excel
Anleitung zum Tutorial
2. Excel-Dateien in VB.NET erstellen
IronXL bietet den einfachsten Ansatz zur Erstellung eines Excel(.xlsx"-Format) datei in einem VB.NET-Projekt. Danach können wir Daten einfügen und auch Zelleigenschaften wie Schriftarten oder Rahmen festlegen.
2.1. Excel-Datei erstellen
Lassen Sie uns zunächst ein WorkBook erstellen:
Dim wb As New WorkBook
Dim wb As New WorkBook
Der obige Code dient zur Erstellung einer neuen Excel-Datei. Standardmäßig hat sie die Erweiterung .xlsx
.
2.2. XLS-Datei erstellen
Wenn Sie eine Datei mit der Erweiterung .xls
erstellen möchten, können Sie diesen Code verwenden.
Dim wb As New WorkBook(ExcelFileFormat.XLS)
Dim wb As New WorkBook(ExcelFileFormat.XLS)
2.3. Arbeitsblatt erstellen
Nachdem das WorkBook erstellt wurde, kann ein Excel-Arbeitsblatt wie folgt erstellt werden:
Dim ws1 As WorkSheet = wb.CreateWorkSheet("Sheet1")
Dim ws1 As WorkSheet = wb.CreateWorkSheet("Sheet1")
Der obige Code erstellt ein neues Arbeitsblatt ws1
mit dem Namen sheet1
im Arbeitsbuch wb
.
2.4. Mehrere Arbeitsblätter erstellen
Eine beliebige Anzahl von Arbeitsblättern kann auf die gleiche Weise erstellt werden:
Dim ws2 As WorkSheet = wb.CreateWorkSheet("Sheet2")
Dim ws3 As WorkSheet = wb.CreateWorkSheet("Sheet3")
Dim ws2 As WorkSheet = wb.CreateWorkSheet("Sheet2")
Dim ws3 As WorkSheet = wb.CreateWorkSheet("Sheet3")
3. Daten in Arbeitsblatt einfügen
3.1. Daten in Zellen einfügen
Jetzt können wir ganz einfach Daten in die Zellen des Arbeitsblatts einfügen, und zwar wie folgt:
worksheet("CellAddress").Value = "MyValue"
worksheet("CellAddress").Value = "MyValue"
Zum Beispiel können Daten im Arbeitsblatt "ws1" wie folgt eingefügt werden:
ws1("A1").Value = "Hello World"
ws1("A1").Value = "Hello World"
Der obige Code schreibt Hallo World
in die Zelle A1
des Arbeitsblatts ws1
.
3.2. Daten in den Bereich einfügen
Es ist auch möglich, Daten in viele Zellen zu schreiben, indem man die Bereichsfunktion wie folgt verwendet:
ws1("A3:A8").Value = "NewValue"
ws1("A3:A8").Value = "NewValue"
Der obige Code schreibt NewValue
von Zelle A3
nach A8
in Arbeitsblatt ws1
.
3.3. Erstellen und Bearbeiten von Arbeitsblättern Beispiel
Wir erstellen eine neue Excel-Datei "Beispiel.xlsx" und fügen darin einige Daten ein, um den oben gelernten Code zu veranschaulichen.
/**
Create and Edit Excel
anchor-create-and-edit-worksheets-example
**/
Imports IronXL
Sub Main()
Dim wb As New WorkBook(ExcelFileFormat.XLSX)
Dim ws1 As WorkSheet = wb.CreateWorkSheet("Sheet1")
ws1("A1").Value = "Hello"
ws1("A2").Value = "World"
ws1("B1:B8").Value = "RangeValue"
wb.SaveAs("Sample.xlsx")
End Sub
/**
Create and Edit Excel
anchor-create-and-edit-worksheets-example
**/
Imports IronXL
Sub Main()
Dim wb As New WorkBook(ExcelFileFormat.XLSX)
Dim ws1 As WorkSheet = wb.CreateWorkSheet("Sheet1")
ws1("A1").Value = "Hello"
ws1("A2").Value = "World"
ws1("B1:B8").Value = "RangeValue"
wb.SaveAs("Sample.xlsx")
End Sub
Hinweis: Standardmäßig wird eine neue Excel-Datei im Ordner bin>Debug
des Projekts erstellt, wenn wir eine neue Datei in einem benutzerdefinierten Pfad erstellen möchten:
` wb.SaveAs(@"E:\IronXL\Sample.xlsx")
Hier sehen Sie einen Screenshot der neu erstellten Excel-Datei "sample.xlsx":
Es wird deutlich, wie einfach es sein kann, Excel-Dateien mit IronXL in einer VB.NET Anwendung zu erstellen.
4. Excel-Datei in VB.NET lesen
IronXl bietet auch einen einfachen Ansatz zum Lesen von Excel(.xlsx) dateien in Ihrem VB dotnet Projekt. Holen Sie sich dazu einfach das Excel-Dokument, laden Sie es in Ihr Projekt, lesen Sie die Daten und verwenden Sie es nach Ihren Wünschen.
Folgen Sie diesen Schritten:
4.1. Zugriff auf Excel-Datei im Projekt
workBook" ist die Klasse von IronXL, deren Objekt vollen Zugriff auf die Excel-Datei und ihre Funktionen bietet. Wenn wir zum Beispiel auf die Excel-Datei zugreifen wollen, verwenden wir einfach:
WorkBook wb = WorkBook.Load("sample.xlsx") 'Excel file path
WorkBook wb = WorkBook.Load("sample.xlsx") 'Excel file path
Im obigen Code wird `WorkBook.Load()funktion "Probe.xlsx" in "WB" laden. Jede Art von Funktion kann auf "wb" ausgeführt werden, indem auf ein bestimmtes Arbeitsblatt der Excel-Datei zugegriffen wird.
4.2. Zugriff auf spezifisches WorkSheet
Um auf ein bestimmtes Blatt in Excel zuzugreifen, nehmen Sie die Klasse WorkSheet
, die auf die folgenden verschiedenen Arten verwendet werden kann:
4.2.1. Nach Blatt Name
Dim ws As WorkSheet = WorkBook.GetWorkSheet("sheet1") 'by sheet name
Dim ws As WorkSheet = WorkBook.GetWorkSheet("sheet1") 'by sheet name
wb" ist das im obigen Abschnitt angegebene WorkBook.
4.2.2. Nach Blattindex
Dim ws As WorkSheet = WorkBook.WorkSheets(0) 'by sheet index
Dim ws As WorkSheet = WorkBook.WorkSheets(0) 'by sheet index
4.2.3. Standard-Blatt
Dim ws As WorkSheet = workbook.DefaultWorkSheet() 'for the default sheet:
Dim ws As WorkSheet = workbook.DefaultWorkSheet() 'for the default sheet:
4.2.4. Erstes Blatt
Dim sheet As WorkSheet = workbook.WorkSheets.FirstOrDefault() 'for the first sheet:
Dim sheet As WorkSheet = workbook.WorkSheets.FirstOrDefault() 'for the first sheet:
4.2.1. Erstes oder Standardblatt
Dim sheet As WorkSheet = workbook.WorkSheets.FirstOrDefault() 'for the first or default sheet:
Dim sheet As WorkSheet = workbook.WorkSheets.FirstOrDefault() 'for the first or default sheet:
Nachdem Sie Excel-Blatt "ws" erhalten haben, können Sie jede Art von Daten aus dem entsprechenden Arbeitsblatt der Excel-Datei abrufen und alle Excel-Funktionen ausführen.
5. Zugriff auf Daten aus WorkSheet
Auf diese Weise kann auf Daten aus dem ExcelSheet ws
zugegriffen werden:
Dim int_Value As Integer = sheet("A2").IntValue 'for integer
Dim str_value As String = sheet("A2").ToString() 'for string
Dim int_Value As Integer = sheet("A2").IntValue 'for integer
Dim str_value As String = sheet("A2").ToString() 'for string
5.1. Daten aus einer bestimmten Spalte
Es ist auch möglich, Daten aus vielen Zellen einer bestimmten Spalte auf die folgende Weise zu erhalten:
For Each cell In sheet("A2:A10")
Console.WriteLine("value is: {0}", cell.Text)
Next cell
For Each cell In sheet("A2:A10")
Console.WriteLine("value is: {0}", cell.Text)
Next cell
Es werden die Werte von Zelle A2
bis A10
angezeigt. Nachfolgend wird ein Codebeispiel für die gesamte Diskussion gegeben.
/**
Load and Edit Values
anchor-data-from-specific-column
**/
Imports IronXL
Sub Main()
Dim wb As WorkBook = WorkBook.Load("sample.xlsx")
Dim ws As WorkSheet = wb.WorkSheets.FirstOrDefault()
For Each cell In ws("A2:A10")
Console.WriteLine("value is: {0}", cell.Text)
Next
Console.ReadKey()
End Sub
/**
Load and Edit Values
anchor-data-from-specific-column
**/
Imports IronXL
Sub Main()
Dim wb As WorkBook = WorkBook.Load("sample.xlsx")
Dim ws As WorkSheet = wb.WorkSheets.FirstOrDefault()
For Each cell In ws("A2:A10")
Console.WriteLine("value is: {0}", cell.Text)
Next
Console.ReadKey()
End Sub
Es wird die folgende Ausgabe angezeigt:
Und wir können einen Screenshot der Excel-Datei "Sample.xlsx" sehen:
6. Funktionen für Daten ausführen
Es ist einfach, auf gefilterte Daten aus einem Excel-Arbeitsblatt zuzugreifen, indem Sie Aggregatfunktionen wie Summe, Min oder Max auf folgende Weise anwenden:
Dim sum As Decimal = ws("From:To").Sum()
Dim min As Decimal = ws("From:To").Min()
Dim max As Decimal = ws("From:To").Max()
Dim sum As Decimal = ws("From:To").Sum()
Dim min As Decimal = ws("From:To").Min()
Dim max As Decimal = ws("From:To").Max()
Sie können mehr lesen überExcel-Aggregatfunktionen hier.
/**
Apply Functions to Data
anchor-perform-functions-on-data
**/
Imports IronXL
Sub Main()
Dim wb As WorkBook = WorkBook.Load("sample.xlsx")
Dim ws As WorkSheet = wb.WorkSheets.FirstOrDefault()
Dim sum As Decimal = ws("G2:G10").Sum()
Dim min As Decimal = ws("G2:G10").Min()
Dim max As Decimal = ws("G2:G10").Max()
Console.WriteLine("Sum is: {0}", sum)
Console.WriteLine("Min is: {0}", min)
Console.WriteLine("Max is: {0}", max)
Console.ReadKey()
End Sub
/**
Apply Functions to Data
anchor-perform-functions-on-data
**/
Imports IronXL
Sub Main()
Dim wb As WorkBook = WorkBook.Load("sample.xlsx")
Dim ws As WorkSheet = wb.WorkSheets.FirstOrDefault()
Dim sum As Decimal = ws("G2:G10").Sum()
Dim min As Decimal = ws("G2:G10").Min()
Dim max As Decimal = ws("G2:G10").Max()
Console.WriteLine("Sum is: {0}", sum)
Console.WriteLine("Min is: {0}", min)
Console.WriteLine("Max is: {0}", max)
Console.ReadKey()
End Sub
Mit diesem Code erhalten wir diese Anzeige:
Und diese Excel-Datei Sample.xlsx
:
Sie können mehr darüber erfahren, wie Sieexcel lesen in dem verlinkten Artikel.
Tutorial Schnellzugriff
Dokumentation API-Referenz
Greifen Sie auf die Dokumentation der API-Referenz von IronXL zu und erfahren Sie, wie Sie auf einfache Weise mit Excel in Ihrem VB.NET Projekt arbeiten können. Finden Sie Listen von Features, Funktionen, Klassen und mehr.
Dokumentation API-Referenz