首先引用COM接口的Excel:
Microsoft.Office.Interop.Excel.Application excel对象表示 Excel 应用程序本身。
Application 对象
Application 对象公开了大量有关正在运行的应用程序、应用于该实例的选项以及在该实例中打开的当前用户的对象的信息。
workbook对象
Microsoft.Office.Interop.Excel.Workbook 类表示 Excel 应用程序中的单个工作簿。
Worksheet 对象
Microsoft.Office.Interop.Excel.Worksheet 对象是Worksheets集合的成员。
Microsoft.Office.Interop.Excel.Worksheet 的许多属性、方法和事件与 Application 或Microsoft.Office.Interop.Excel.Workbook 类提供的成员完全相同或相似。
Excel 提供Sheets集合作为 Microsoft.Office.Interop.Excel.Workbook 对象的属性,但是 Excel 中没有Sheet类。相反,Sheets 集合的每个成员都是一个Microsoft.Office.Interop.Excel.Worksheet 对象,或者是一个Microsoft.Office.Interop.Excel.Chart对象
Range 对象
Microsoft.Office.Interop.Excel.Range 对象是 Excel 应用程序中最常用的对象。在能够处理 Excel 内的任何范围之前,必须将它表示为 Range 对象,并处理该对象的方法和属性。Range 对象表示一个单元格、一行、一列、包含一个或多个单元格块(可以连续,也可以不连续)的单元格选定范围,甚至多个工作表中的一组单元格。
一个简单的从DataGridView里面读入到Excel里的实现代码:
/// <summary>
/// 导出Excel的自定义方法
/// </summary>
/// <param name="dgv">所需要导出数据所在的DataGridView</param>
/// <param name="isShowExcel">是否显示</param>
/// <returns>导出成功则返回true</returns>
private bool ExportDataGridView(string excelName,DataGridView dgv, bool isShowExcel,Exception ex)
{
if (dgv.Rows.Count == 0)
return false;
try
{
//建立Excel对象
Excel.Application MyExcel = new Microsoft.Office.Interop.Excel.Application();
MyExcel.Application.Workbooks.Add(true);
MyExcel.Visible = isShowExcel;
//表名
for (int i = 0; i < dgv.ColumnCount; i++)
{
MyExcel.Cells[1, 1] = excelName;