温馨提示×

C#如何实现Excel文件的自动化操作

c#
小樊
81
2024-09-02 17:04:53
栏目: 编程语言

在C#中,可以使用Microsoft Office Interop Excel库或者第三方库(如EPPlus、NPOI等)来实现Excel文件的自动化操作

  1. 使用Microsoft Office Interop Excel库:

首先,需要在项目中添加对Microsoft.Office.Interop.Excel的引用。然后,可以使用以下代码创建一个新的Excel工作簿,并向其中添加数据:

using Microsoft.Office.Interop.Excel;
using System;

namespace ExcelAutomation
{
    class Program
    {
        static void Main(string[] args)
        {
            // 创建一个新的Excel应用程序实例
            Application excelApp = new Application();
            excelApp.Visible = true;

            // 创建一个新的Excel工作簿
            Workbook workbook = excelApp.Workbooks.Add(Type.Missing);

            // 获取当前活动的工作表
            Worksheet worksheet = workbook.ActiveSheet;

            // 向工作表中添加数据
            worksheet.Cells[1, 1] = "姓名";
            worksheet.Cells[1, 2] = "年龄";
            worksheet.Cells[2, 1] = "张三";
            worksheet.Cells[2, 2] = 25;

            // 保存工作簿
            workbook.SaveAs("C:\\Users\\username\\Desktop\\test.xlsx");

            // 关闭工作簿
            workbook.Close();

            // 退出Excel应用程序
            excelApp.Quit();
        }
    }
}
  1. 使用EPPlus库:

首先,需要通过NuGet安装EPPlus库。然后,可以使用以下代码创建一个新的Excel文件,并向其中添加数据:

using OfficeOpenXml;
using System.IO;

namespace ExcelAutomation
{
    class Program
    {
        static void Main(string[] args)
        {
            // 创建一个新的Excel文件
            using (FileStream fileStream = new FileStream("C:\\Users\\username\\Desktop\\test.xlsx", FileMode.Create))
            {
                using (ExcelPackage excelPackage = new ExcelPackage(fileStream))
                {
                    // 创建一个新的工作表
                    ExcelWorksheet worksheet = excelPackage.Workbook.Worksheets.Add("Sheet1");

                    // 向工作表中添加数据
                    worksheet.Cells[1, 1].Value = "姓名";
                    worksheet.Cells[1, 2].Value = "年龄";
                    worksheet.Cells[2, 1].Value = "张三";
                    worksheet.Cells[2, 2].Value = 25;

                    // 保存工作簿
                    excelPackage.Save();
                }
            }
        }
    }
}

这只是一个简单的示例,您可以根据需要进行更多的自定义和操作。

0