(1)创建一个名为OfficeOperator2的类库项目。引用操作Word的.NET类库,如图所示
(2)在OfficeOperator2项目中添加一个名为ExcelOperator的类,并添加Microsoft.Office.Interop.Excel命名空间。
(3)在ExcelOperator类中声明用于操作Excel的对象,并定义其构造函数/定义创建Excel表格函数CreateExcel
using Microsoft.Office.Interop.Excel;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Reflection;
using System.Text;
using System.Threading.Tasks;
namespace OfficeOperator2
{
public class ExcelOperator
{
public Application ExcelApplication; //Excel应用对象
public Workbook ExcelWorkbook; //Excel工作簿对象
public Worksheet ExcelWorksheet; //Excel工作表对象
public ExcelOperator()//声明用于操作Excel的对象,并定义其构造函数
{
ExcelApplication = new Application(); //创建Application对象
// ExcelApplication.Visible = true; //创建完成后是否打开Excel
}
/// <summary>
/// 创建Excel表格
/// </summary>
public void CreateExcel()
{
ExcelWorkbook = ExcelApplication.Workbooks.Add(true); //添加工作簿
ExcelWorksheet = ExcelWorkbook.Worksheets[1] as Worksheet; //获取工作表
}
/// <summary>
/// 保存Excel表格
/// </summary>
/// <param name="fileName"></param>
public void SaveExcel(string fileName)
{
ExcelApplication.DisplayAlerts = false; //设置禁止弹出保存询问提示框
ExcelApplication.AlertBeforeOverwriting = false; //设置禁止弹出覆盖询问提示框
object FileName = fileName; //需要保存Excel文件的名称
object Password = ""; //打开Excel文档密码,少于16位
object WriteResPassword = ""; //修改Excel文档密码,小于16位
object ReadOnlyRecommended = false; //Excel以只读形式打开是否提示
object CreateBackup = false; //是否创建备份
ExcelWorkbook.SaveAs(FileName, Missing.Value, Password, WriteResPassword, ReadOnlyRecommended, CreateBackup, XlSaveAsAccessMode.xlNoChange);
}
/// <summary>
/// 退出Excel应用
/// </summary>
public void QuitExcel()
{
ExcelApplication.Quit(); //退出Excel应用
}
}
}
(4)创建一个名为CreateExcel的控制台应用程序,在main函数中添加代码如下:
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using OfficeOperator2;
using Microsoft.Office.Interop.Excel;
namespace CreateExcel
{
internal class Program
{
static void Main(string[] args)
{
ExcelOperator excel = new ExcelOperator(); //创建Excel操作者
excel.CreateExcel(); //创建Excel表格
excel.SaveExcel(Directory.GetCurrentDirectory() + "\\测试表格.xlsx"); //保存Excel表格
excel.QuitExcel(); //退出Excel应用
}
}
}
启动CreateExcel控制台应用程序:创建保存了一个空白Excel文档(实际需要等待几秒):
程序框架: