欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 科技 > IT业 > 通过 C# 写入数据到Excel表格

通过 C# 写入数据到Excel表格

2024/10/24 7:31:33 来源:https://blog.csdn.net/Eiceblue/article/details/140719248  浏览:    关键词:通过 C# 写入数据到Excel表格

Excel 是一款广泛应用于数据处理、分析和报告制作的电子表格软件。在商业、学术和日常生活中,Excel 的使用极为普遍。本文将详细介绍如何使用免费.NET库将数据写入到 Excel 中,包括文本、数值、数组、和DataTable数据的输入。

文章目录

    • C# 在Excel单元格中写入文本、或数值
    • C# 在Excel工作表中写入数组
    • C# 在Excel工作表中写入DataTable数据表

本文用到的免费.NET Excel库为 Free Spire.XLS for .NET

该库可以在Visual Studio > NuGet程序包管理器中搜索 “FreeSpire.XLS” 来安装。也可以通过此链接下载产品包后手动添加引用。

C# 在Excel单元格中写入文本、或数值

  1. 创建一个工作簿Workbook对象;
  2. 获取指定工作表;
  3. 写入数据到指定单元格:
    写入文本Worksheet.Range[].TextWorksheet.Range[].Value 属性;
    写入数字Worksheet.Range[].Value2 属性;
  4. 保存Excel文件。

C#代码

using Spire.Xls;namespace WriteDataToCells
{class Program{static void Main(string[] args){//创建一个Excel工作簿Workbook workbook = new Workbook();//获取其中第一张工作表Worksheet worksheet = workbook.Worksheets[0];//写入数据到指定单元格worksheet.Range["A1"].Text = "考号";worksheet.Range["B1"].Text = "学生姓名";worksheet.Range["C1"].Value = "所在班级";worksheet.Range["D1"].Value = "考试成绩";worksheet.Range["A2"].Value = "TS001";worksheet.Range["B2"].Value = "陈国柏";worksheet.Range["C2"].Value = "5班";worksheet.Range["D2"].Value2 = 97;worksheet.Range["A3"].Value = "TS002";worksheet.Range["B3"].Value = "易江维";worksheet.Range["C3"].Value = "2班";worksheet.Range["D3"].Value2 = 92;//设置字体样式worksheet.Range["A1:D1"].Style.Font.IsBold = true;worksheet.Range["A1:D3"].Style.Font.Size = 11;worksheet.Range["A1:D3"].Style.Font.FontName = "宋体";//保存Excel文件workbook.SaveToFile("写入数据到单元格.xlsx", ExcelVersion.Version2016);}}
}

将数据写入Excel

C# 在Excel工作表中写入数组

  1. 创建一个工作簿Workbook对象;
  2. 获取指定工作表;
  3. 定义一个二维数组;
  4. 通过 Worksheet.InsertArray(Object\[,\] objectArray, int firstRow, int firstColumn) 方法将二维数组中的数据插入到工作表中指定位置;
  5. 保存Excel文件。

C#代码:

using Spire.Xls;namespace WriteArraysToWorksheet
{class Program{static void Main(string[] args){//创建一个Excel工作簿Workbook workbook = new Workbook();//获取其中第一张工作表Worksheet worksheet = workbook.Worksheets[0];//创建一个二维数组string[,] twoDimensionalArray = new string[,]{{"统计年份", "城市", "销售额", "增长率"},{"2021", "上海", "150万", "55%"},{"2021", "杭州", "80万", "-12%"},{"2021", "北京", "100万", "20%"}};//将数组写入工作表指定位置worksheet.InsertArray(twoDimensionalArray, 1, 1);//设置字体样式worksheet.Range["A1:D1"].Style.Font.IsBold = true;worksheet.Range["A1:D4"].Style.Font.Size = 11;worksheet.Range["A1:D4"].Style.Font.FontName = "宋体";//保存Excel文件workbook.SaveToFile("写入数组.xlsx", ExcelVersion.Version2016);}}
}

将数组写入Excel

C# 在Excel工作表中写入DataTable数据表

  1. 创建一个工作簿Workbook对象;
  2. 获取指定工作表;
  3. 创建一个DataTable对象,并添加数据;
  4. 使用 Worksheet.InsertDataTable(DataTable dataTable,bool columnHeaders, int firstRow, int firstColumn, bool transTypes) 方法将DataTable的内容插入到工作表中指定位置;
  5. 保存Excel文件。

C#代码:

using System;
using System.Data;
using System.Drawing;
using Spire.Xls;namespace WriteDataTableToWorksheet
{class Program{static void Main(string[] args){//创建一个Excel工作簿Workbook workbook = new Workbook();//获取其中第一张工作表Worksheet worksheet = workbook.Worksheets[0];//创建DataTable对象DataTable dataTable = new DataTable();dataTable.Columns.Add("编码", typeof(Int32));dataTable.Columns.Add("产品", typeof(String));dataTable.Columns.Add("单价", typeof(Decimal));//创建行并添加数据DataRow dr = dataTable.NewRow();dr[0] = 110600015;dr[1] = "数据线";dr[2] = "8.5";dataTable.Rows.Add(dr);dr = dataTable.NewRow();dr[0] = 110600037;dr[1] = "鼠标";dr[2] = "29.9";dataTable.Rows.Add(dr);dr = dataTable.NewRow();dr[0] = 110600021;dr[1] = "网线";dr[2] = "15.5";dataTable.Rows.Add(dr);//将datatable中的数据写入工作表worksheet.InsertDataTable(dataTable, true, 1, 1, true);//设置字体样式worksheet.Range["A1:D1"].Style.Font.IsBold = true;worksheet.Range["A1:D4"].Style.Font.Size = 11;worksheet.Range["A1:D4"].Style.Font.FontName = "宋体";//保存Excel文件workbook.SaveToFile("写入DataTable.xlsx", ExcelVersion.Version2016);}}
}

将DataTable写入Excel


通过以上提供的三个示例,你可以将各种类型的数据写入到 Excel工作表中。
如需对Excel中的数据进行进一步的分析处理、或插入图表等元素,可以点击查看该免费Spire.XLS库提供相应功能教程:
https://www.e-iceblue.cn/spirexls/spire-xls-for-net-program-guide-content.html

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com