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

打印 上一主题 下一主题

主题 1772|帖子 1772|积分 5316

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

  
   本文用到的免费.NET Excel库为 Free Spire.XLS for .NET
  该库可以在Visual Studio > NuGet步伐包管理器中搜刮 “FreeSpire.XLS” 来安装。也可以通过此链接下载产物包后手动添加引用。
  C# 在Excel单位格中写入文本、或数值


  • 创建一个工作簿Workbook对象;
  • 获取指定工作表;
  • 写入数据到指定单位格:
    写入文本Worksheet.Range[].TextWorksheet.Range[].Value 属性;
    写入数字Worksheet.Range[].Value2 属性;
  • 生存Excel文件。
C#代码
  1. using Spire.Xls;
  2. namespace WriteDataToCells
  3. {
  4.     class Program
  5.     {
  6.         static void Main(string[] args)
  7.         {
  8.             //创建一个Excel工作簿
  9.             Workbook workbook = new Workbook();
  10.             //获取其中第一张工作表
  11.             Worksheet worksheet = workbook.Worksheets[0];
  12.             //写入数据到指定单元格
  13.             worksheet.Range["A1"].Text = "考号";
  14.             worksheet.Range["B1"].Text = "学生姓名";
  15.             worksheet.Range["C1"].Value = "所在班级";
  16.             worksheet.Range["D1"].Value = "考试成绩";
  17.             worksheet.Range["A2"].Value = "TS001";
  18.             worksheet.Range["B2"].Value = "陈国柏";
  19.             worksheet.Range["C2"].Value = "5班";
  20.             worksheet.Range["D2"].Value2 = 97;
  21.             worksheet.Range["A3"].Value = "TS002";
  22.             worksheet.Range["B3"].Value = "易江维";
  23.             worksheet.Range["C3"].Value = "2班";
  24.             worksheet.Range["D3"].Value2 = 92;
  25.             //设置字体样式
  26.             worksheet.Range["A1:D1"].Style.Font.IsBold = true;
  27.             worksheet.Range["A1:D3"].Style.Font.Size = 11;
  28.             worksheet.Range["A1:D3"].Style.Font.FontName = "宋体";
  29.             //保存Excel文件
  30.             workbook.SaveToFile("写入数据到单元格.xlsx", ExcelVersion.Version2016);
  31.         }
  32.     }
  33. }
复制代码

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


  • 创建一个工作簿Workbook对象;
  • 获取指定工作表;
  • 界说一个二维数组;
  • 通过 Worksheet.InsertArray(Object\[,\] objectArray, int firstRow, int firstColumn) 方法将二维数组中的数据插入到工作表中指定位置;
  • 生存Excel文件。
C#代码:
  1. using Spire.Xls;
  2. namespace WriteArraysToWorksheet
  3. {
  4.     class Program
  5.     {
  6.         static void Main(string[] args)
  7.         {
  8.             //创建一个Excel工作簿
  9.             Workbook workbook = new Workbook();
  10.             //获取其中第一张工作表
  11.             Worksheet worksheet = workbook.Worksheets[0];
  12.             //创建一个二维数组
  13.             string[,] twoDimensionalArray = new string[,]{
  14.                 {"统计年份", "城市", "销售额", "增长率"},
  15.                 {"2021", "上海", "150万", "55%"},
  16.                 {"2021", "杭州", "80万", "-12%"},
  17.                 {"2021", "北京", "100万", "20%"}
  18.             };
  19.             //将数组写入工作表指定位置
  20.             worksheet.InsertArray(twoDimensionalArray, 1, 1);
  21.             //设置字体样式
  22.             worksheet.Range["A1:D1"].Style.Font.IsBold = true;
  23.             worksheet.Range["A1:D4"].Style.Font.Size = 11;
  24.             worksheet.Range["A1:D4"].Style.Font.FontName = "宋体";
  25.             //保存Excel文件
  26.             workbook.SaveToFile("写入数组.xlsx", ExcelVersion.Version2016);
  27.         }
  28.     }
  29. }
复制代码

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


  • 创建一个工作簿Workbook对象;
  • 获取指定工作表;
  • 创建一个DataTable对象,并添加数据;
  • 使用 Worksheet.InsertDataTable(DataTable dataTable,bool columnHeaders, int firstRow, int firstColumn, bool transTypes) 方法将DataTable的内容插入到工作表中指定位置;
  • 生存Excel文件。
C#代码:
  1. using System;
  2. using System.Data;
  3. using System.Drawing;
  4. using Spire.Xls;
  5. namespace WriteDataTableToWorksheet
  6. {
  7.     class Program
  8.     {
  9.         static void Main(string[] args)
  10.         {
  11.             //创建一个Excel工作簿
  12.             Workbook workbook = new Workbook();
  13.             //获取其中第一张工作表
  14.             Worksheet worksheet = workbook.Worksheets[0];
  15.             //创建DataTable对象
  16.             DataTable dataTable = new DataTable();
  17.             dataTable.Columns.Add("编码", typeof(Int32));
  18.             dataTable.Columns.Add("产品", typeof(String));
  19.             dataTable.Columns.Add("单价", typeof(Decimal));
  20.             //创建行并添加数据
  21.             DataRow dr = dataTable.NewRow();
  22.             dr[0] = 110600015;
  23.             dr[1] = "数据线";
  24.             dr[2] = "8.5";
  25.             dataTable.Rows.Add(dr);
  26.             dr = dataTable.NewRow();
  27.             dr[0] = 110600037;
  28.             dr[1] = "鼠标";
  29.             dr[2] = "29.9";
  30.             dataTable.Rows.Add(dr);
  31.             dr = dataTable.NewRow();
  32.             dr[0] = 110600021;
  33.             dr[1] = "网线";
  34.             dr[2] = "15.5";
  35.             dataTable.Rows.Add(dr);
  36.             //将datatable中的数据写入工作表
  37.             worksheet.InsertDataTable(dataTable, true, 1, 1, true);
  38.             //设置字体样式
  39.             worksheet.Range["A1:D1"].Style.Font.IsBold = true;
  40.             worksheet.Range["A1:D4"].Style.Font.Size = 11;
  41.             worksheet.Range["A1:D4"].Style.Font.FontName = "宋体";
  42.             //保存Excel文件
  43.             workbook.SaveToFile("写入DataTable.xlsx", ExcelVersion.Version2016);
  44.         }
  45.     }
  46. }
复制代码


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

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

南飓风

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表