VB .NET 读取& 创建 Excel 文件 (代码示例教程)
开发人员需要一种简单流畅的方法来访问 VB .NET Excel 文件。在本教程中,我们将使用 IronXL 读取 VB dotnet Excel 文件,并访问所有数据供项目使用。我们将学习如何创建各种格式的电子表格 ( .xls"、".xlsx"、".csv "和".tsv )此外,还可以使用 VB.NET Excel 编程设置单元格样式和插入数据。
如何在 VB.NET 中读取 Excel 文件
- 下载 VB.NET 读取 Excel C# 库
- 在 VB.NET 中创建 Excel 文件
- 将数据插入工作表
- 在 VB.NET 中读取 Excel 文件
- 从工作表访问数据
- 对数据执行功能
步骤 1
1.Excel for VB.NET 库
使用以下工具获取 IronXL Excel for VB.NET 库 DLL 下载 或 NuGet.IronXL 是我们在 VB.NET 项目中快速访问 Excel 数据的第一步,也是我们在本教程中将使用的一步。 (免费开发).
Install-Package IronXL.Excel
教程
2.在 VB.NET 中创建 Excel 文件
IronXL 提供了创建 Excel 文件的最简单方法。 (.xlsx "格式) 文件。之后,我们就可以插入数据并设置单元格属性,如字体样式或边框。
2.1.创建 Excel 文件
让我们先创建一个工作簿:
Dim wb As New WorkBook
Dim wb As New WorkBook
上述代码用于创建一个新的 Excel 文件。默认情况下,其扩展名为 .xlsx
。
2.2.创建 XLS 文件
如果要创建扩展名为".xls "的文件,可以使用此代码。
Dim wb As New WorkBook(ExcelFileFormat.XLS)
Dim wb As New WorkBook(ExcelFileFormat.XLS)
2.3.创建工作表
创建工作簿后,可按如下步骤创建 Excel 工作表:
Dim ws1 As WorkSheet = wb.CreateWorkSheet("Sheet1")
Dim ws1 As WorkSheet = wb.CreateWorkSheet("Sheet1")
上述代码将在工作簿 wb
中创建名称为 sheet1
的新工作表 ws1
。
2.4.创建多个工作表
可以用同样的方法创建任意数量的工作表:
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.将数据插入工作表
3.1.在单元格中插入数据
现在,我们可以轻松地在工作表单元格中插入数据,具体操作如下
worksheet("CellAddress").Value = "MyValue"
worksheet("CellAddress").Value = "MyValue"
例如,工作表 ws1
中的数据可以按以下方式插入:
ws1("A1").Value = "Hello World"
ws1("A1").Value = "Hello World"
上述代码将在工作表 ws1
的 A1
单元格中写入 Hello World
。
3.2.将数据插入范围
还可以使用范围函数将数据写入多个单元格,如下所示:
ws1("A3:A8").Value = "NewValue"
ws1("A3:A8").Value = "NewValue"
上述代码将从工作表 ws1
中的 A3
至 A8
单元格写入 NewValue
。
3.3.创建和编辑工作表示例
我们将创建一个新的 Excel 文件 "Sample.xlsx",并在其中插入一些数据,以展示我们在上面学到的代码。
/**
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
注意: 默认情况下,新 Excel 文件将在项目的 bin>Debug
文件夹中创建:
wb.SaveAs(@"E:\IronXL\Sample.xlsx")
Here is the screenshot of our newly created Excel file sample.xlsx
:
由此可见,在 VB.NET 应用程序中使用 IronXL
创建 Excel 文件是多么简单。
4.在 VB.NET 中读取 Excel 文件
IronXl 还提供了一种简单的方法来读取 Excel (.xlsx
) 文件。为此,只需获取 Excel 文档,将其加载到您的项目中,读取其中的数据,并按您的要求使用即可。
请按照以下步骤操作:
4.1.在项目中访问 Excel 文件
WorkBook "是 IronXL 的一个类,其对象提供了对 Excel 文件及其函数的完全访问。例如,如果我们要访问 Excel 文件,只需使用
WorkBook wb = WorkBook.Load("sample.xlsx") 'Excel file path
WorkBook wb = WorkBook.Load("sample.xlsx") 'Excel file path
在上面的代码中,WorkBook.Load()函数在
wb中加载
sample.xlsx。通过访问 Excel 文件的特定工作表,可以在
wb` 上执行任何类型的函数。
4.2.访问特定工作表
要访问 Excel 中的特定工作表,请使用 "WorkSheet "类:
4.2.1.按纸张名称
Dim ws As WorkSheet = WorkBook.GetWorkSheet("sheet1") 'by sheet name
Dim ws As WorkSheet = WorkBook.GetWorkSheet("sheet1") 'by sheet name
wb "是上一节中声明的工作簿。
4.2.2.按纸张索引
Dim ws As WorkSheet = WorkBook.WorkSheets(0) 'by sheet index
Dim ws As WorkSheet = WorkBook.WorkSheets(0) 'by sheet index
4.2.3.默认工作表
Dim ws As WorkSheet = workbook.DefaultWorkSheet() 'for the default sheet:
Dim ws As WorkSheet = workbook.DefaultWorkSheet() 'for the default sheet:
4.2.4.第一张
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.第一页或默认页
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:
获取 Excel 工作表 ws
后,就可以从 Excel 文件的相应工作表中获取任何类型的数据,并执行所有 Excel 功能。
5.从工作表中获取数据
可以通过这种方式从 ExcelSheet ws
访问数据:
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.来自特定列的数据
还可以通过以下方法从特定列的多个单元格中获取数据:
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
它将显示从 A2
到 A10
单元格的值。下面是整个讨论的代码示例。
/**
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
这将显示以下输出:
我们可以看到 Excel 文件 Sample.xlsx
的截图:
6.对数据执行函数
从 Excel 工作表中获取过滤后的数据非常简单,只需按以下方法应用汇总函数(如求和、最小或最大)即可:
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()
您可以阅读更多关于 Excel 汇总函数 这里。
/**
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
这段代码将为我们提供这样的显示:
还有这个 Excel 文件 Sample.xlsx
:
您可以进一步了解如何 阅读Excel 在链接的文章中。