在C#中创建XLSX文件
在商业自动化中,我们经常需要在.NET应用程序中处理Excel电子表格,包括编程方式创建电子表格和插入数据。 在以下教程中,我们将学习如何以不同的格式创建Excel电子表格。(.xls"、".xlsx"、".csv "和".tsv)使用 C# 编程设置单元格样式和插入数据。
如何在 C&num 中创建 XLXL 文件;
安装 Excel 库以创建 XLSX 文件。
使用
Workbook
对象创建一个Excel文件。选择默认的
Worksheet
。将数据添加到默认的
Worksheet
。- 将Excel文件保存到磁盘。
步骤 1
1. 下载 IronXL DLL
IronXL 提供了创建 Excel 的最简单方法(.xlsx
)C#项目中的文件。 下载 DLL或NuGet 安装并免费用于开发。
Install-Package IronXL.Excel
教程
2. 创建一个工作簿
使用这款软件,我们可以插入数据并设置单元格属性,如字体样式或边框。
2.1 创建 .XLSX 文件
使用此代码创建一个工作簿以新建一个默认扩展名为 .xlsx
的Excel文件。
/**
Create XLSX File
anchor-create-a-workbook
**/
WorkBook wb = WorkBook.Create();
/**
Create XLSX File
anchor-create-a-workbook
**/
WorkBook wb = WorkBook.Create();
'''
'''Create XLSX File
'''anchor-create-a-workbook
'''*
Dim wb As WorkBook = WorkBook.Create()
2.2 创建 .XLS 文件
如果您想创建一个.xls
扩展名的文件,请使用:
WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);
WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);
Dim wb As WorkBook = WorkBook.Create(ExcelFileFormat.XLS)
3. 创建 Excel 工作表
在选择的文件格式中创建一个工作簿之后,创建一个Excel工作表。 此代码将在工作簿wb
中创建一个名为sheet1
的新工作表ws1
。
WorkSheet ws1 = wb.CreateWorkSheet("sheet1");
WorkSheet ws1 = wb.CreateWorkSheet("sheet1");
Dim ws1 As WorkSheet = wb.CreateWorkSheet("sheet1")
3.1 创建多个工作表
可以用相同的方式创建多个工作表:
/**
Create WorkSheets
anchor-create-an-excel-worksheet
**/
WorkSheet ws2 = wb.CreateWorkSheet("sheet2");
WorkSheet ws3 = wb.CreateWorkSheet("sheet3");
/**
Create WorkSheets
anchor-create-an-excel-worksheet
**/
WorkSheet ws2 = wb.CreateWorkSheet("sheet2");
WorkSheet ws3 = wb.CreateWorkSheet("sheet3");
'''
'''Create WorkSheets
'''anchor-create-an-excel-worksheet
'''*
Dim ws2 As WorkSheet = wb.CreateWorkSheet("sheet2")
Dim ws3 As WorkSheet = wb.CreateWorkSheet("sheet3")
4. 将数据插入工作表
现在我们可以轻松地将数据插入工作表单元格中。
worksheet ["CellAddress"].Value = "MyValue";
worksheet ["CellAddress"].Value = "MyValue";
worksheet ("CellAddress").Value = "MyValue"
4.1 将数据插入特定工作表
例如,可以在工作表ws1
中特别插入数据。 下面的代码将在工作表ws1
的A1
单元格中写入Hello World
。
/**
Insert WorkSheet Data
anchor-insert-data-into-worksheets
**/
ws1 ["A1"].Value = "Hello World";
/**
Insert WorkSheet Data
anchor-insert-data-into-worksheets
**/
ws1 ["A1"].Value = "Hello World";
'''
'''Insert WorkSheet Data
'''anchor-insert-data-into-worksheets
'''*
ws1 ("A1").Value = "Hello World"
4.2 将数据插入多个单元格
也可以使用 range 函数将数据写入多个单元格。 以下代码将会将工作表 ws1
中 A3
单元格的 NewValue
写入到 A8
单元格。
ws1 ["A3:A8"].Value = "NewValue";
ws1 ["A3:A8"].Value = "NewValue";
ws1 ("A3:A8").Value = "NewValue"
5. 创建一个示例项目
我们将创建一个新的Excel文件Sample.xlsx
并在其中插入数据。
/**
Sample Project
anchor-make-a-sample-project
**/
using IronXL;
static void Main(string [] args)
{
WorkBook wb = WorkBook.Create();
WorkSheet ws1 = wb.CreateWorkSheet("sheet1");
ws1 ["A1"].Value = "Hello";
ws1 ["A2"].Value = "World";
ws1 ["B1:B8"].Value = "RangeValue";
wb.SaveAs("Sample.xlsx");
}
/**
Sample Project
anchor-make-a-sample-project
**/
using IronXL;
static void Main(string [] args)
{
WorkBook wb = WorkBook.Create();
WorkSheet ws1 = wb.CreateWorkSheet("sheet1");
ws1 ["A1"].Value = "Hello";
ws1 ["A2"].Value = "World";
ws1 ["B1:B8"].Value = "RangeValue";
wb.SaveAs("Sample.xlsx");
}
'''
'''Sample Project
'''anchor-make-a-sample-project
'''*
Imports IronXL
Shared Sub Main(ByVal args() As String)
Dim wb As WorkBook = WorkBook.Create()
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");
这是我们新创建的Excel文件 sample.xlsx
的屏幕截图:
由此可见,在 C# 应用程序中使用 IronXL 创建 Excel 文件是多么简单。
6. 为Excel文件设置ExcelMetadata
IronXL还提供了为Excel文件设置元数据的功能。
/**
Set Metadata
anchor-set-metadata-for-excel-files
**/
WorkBook wb = WorkBook.Create();
wb.Metadata.Author = "AuthorName";
wb.Metadata.Title="TitleValue";
/**
Set Metadata
anchor-set-metadata-for-excel-files
**/
WorkBook wb = WorkBook.Create();
wb.Metadata.Author = "AuthorName";
wb.Metadata.Title="TitleValue";
'''
'''Set Metadata
'''anchor-set-metadata-for-excel-files
'''*
Dim wb As WorkBook = WorkBook.Create()
wb.Metadata.Author = "AuthorName"
wb.Metadata.Title="TitleValue"
7. 设置单元格样式
在您的C#应用程序中设置Excel工作表的单元格样式非常容易。 IronXL 提供了所有必要的单元格样式属性。
7.1. 设置字体样式
字体样式可以按如下设置:
/**
Set Font Style
anchor-set-font-style
**/
WorkSheet ["CellAddress"].Style.Font.Bold =true;
WorkSheet ["CellAddress"].Style.Font.Italic =true;
/**
Set Font Style
anchor-set-font-style
**/
WorkSheet ["CellAddress"].Style.Font.Bold =true;
WorkSheet ["CellAddress"].Style.Font.Italic =true;
'''
'''Set Font Style
'''anchor-set-font-style
'''*
WorkSheet ("CellAddress").Style.Font.Bold =True
WorkSheet ("CellAddress").Style.Font.Italic =True
7.2. 添加删除线
单元格值的删除线可以按以下方式进行:
/**
Add Strikeout
anchor-add-strikeout
**/
WorkSheet ["CellAddress"].Style.Font.Strikeout = true;
/**
Add Strikeout
anchor-add-strikeout
**/
WorkSheet ["CellAddress"].Style.Font.Strikeout = true;
'''
'''Add Strikeout
'''anchor-add-strikeout
'''*
WorkSheet ("CellAddress").Style.Font.Strikeout = True
7.3. 设置边框样式
可以使用以下代码设置边框样式:
/**
Set Border Style
anchor-set-border-style
**/
WorkSheet ["CellAddress"].Style.BottomBorder.Type = IronXL.Styles.BorderType.Dotted;
/**
Set Border Style
anchor-set-border-style
**/
WorkSheet ["CellAddress"].Style.BottomBorder.Type = IronXL.Styles.BorderType.Dotted;
'''
'''Set Border Style
'''anchor-set-border-style
'''*
WorkSheet ("CellAddress").Style.BottomBorder.Type = IronXL.Styles.BorderType.Dotted
8. 应用单元格样式示例项目
让我们看看如何使用下面的示例项目设置多个单元格样式并将其整合在一起。
/**
Sample Cell Styling Set
anchor-apply-cell-styling-sample-project
**/
using IronXL;
static void Main(string [] args)
{
WorkBook wb = WorkBook.Create();
WorkSheet ws = wb.CreateWorkSheet("sheet1");
ws ["A1"].Value = "MyVal";
ws ["B2"].Value = "Hello World";
ws ["A1"].Style.Font.Strikeout = true;
ws ["B2"].Style.Font.Bold =true;
ws ["B2"].Style.Font.Italic =true;
ws ["C3"].Style.TopBorder.Type = IronXL.Styles.BorderType.Double;
ws ["C3"].Style.BottomBorder.Type = IronXL.Styles.BorderType.Dotted;
ws ["C3"].Style.LeftBorder.Type = IronXL.Styles.BorderType.Thick;
ws ["C3"].Style.RightBorder.Type = IronXL.Styles.BorderType.SlantedDashDot;
ws ["C3"].Style.BottomBorder.SetColor("#ff6600");
ws ["C3"].Style.TopBorder.SetColor("#ff6600");
wb.SaveAs("Sample.xlsx");
}
/**
Sample Cell Styling Set
anchor-apply-cell-styling-sample-project
**/
using IronXL;
static void Main(string [] args)
{
WorkBook wb = WorkBook.Create();
WorkSheet ws = wb.CreateWorkSheet("sheet1");
ws ["A1"].Value = "MyVal";
ws ["B2"].Value = "Hello World";
ws ["A1"].Style.Font.Strikeout = true;
ws ["B2"].Style.Font.Bold =true;
ws ["B2"].Style.Font.Italic =true;
ws ["C3"].Style.TopBorder.Type = IronXL.Styles.BorderType.Double;
ws ["C3"].Style.BottomBorder.Type = IronXL.Styles.BorderType.Dotted;
ws ["C3"].Style.LeftBorder.Type = IronXL.Styles.BorderType.Thick;
ws ["C3"].Style.RightBorder.Type = IronXL.Styles.BorderType.SlantedDashDot;
ws ["C3"].Style.BottomBorder.SetColor("#ff6600");
ws ["C3"].Style.TopBorder.SetColor("#ff6600");
wb.SaveAs("Sample.xlsx");
}
'''
'''Sample Cell Styling Set
'''anchor-apply-cell-styling-sample-project
'''*
Imports IronXL
Shared Sub Main(ByVal args() As String)
Dim wb As WorkBook = WorkBook.Create()
Dim ws As WorkSheet = wb.CreateWorkSheet("sheet1")
ws ("A1").Value = "MyVal"
ws ("B2").Value = "Hello World"
ws ("A1").Style.Font.Strikeout = True
ws ("B2").Style.Font.Bold =True
ws ("B2").Style.Font.Italic =True
ws ("C3").Style.TopBorder.Type = IronXL.Styles.BorderType.Double
ws ("C3").Style.BottomBorder.Type = IronXL.Styles.BorderType.Dotted
ws ("C3").Style.LeftBorder.Type = IronXL.Styles.BorderType.Thick
ws ("C3").Style.RightBorder.Type = IronXL.Styles.BorderType.SlantedDashDot
ws ("C3").Style.BottomBorder.SetColor("#ff6600")
ws ("C3").Style.TopBorder.SetColor("#ff6600")
wb.SaveAs("Sample.xlsx")
End Sub
下面是我们新创建的 Excel 文件 sample.xlsx
的截图。
9. 下一步和 Excel 教程
如果您想深入了解并阅读关于.NET Excel创建的分步指南,请查看使用 C# 创建 Excel 文件教程。