您的位置:首页 > 编程语言 > C#

C# excel模板导出

2013-07-21 11:01 218 查看
环境:VS2010 Excel2010

要引用Microsoft Excel 14.0 Object Liberty

引用的命名空间:

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using Excel = Microsoft.Office.Interop.Excel;

using System.Reflection;

using System.Data.OleDb;

using System.Collections;

void ThetThirdPartyDamage(string FileName,string filePath)

{

string xlsFilePath = filePath +"\\"+ FileName;//参数为文件名和文件路径,在此处连接成一个完整的文件路径

Missing miss = Missing.Value;

Excel.Application excel = new Microsoft.Office.Interop.Excel.Application();

excel.Application.Workbooks.Add(miss);

Excel.Workbook workbook;

Excel.Worksheet worksheet;

//excel.Visible = false; //是Excel可见,表示创建过后显示

//如果要导出到固定路径下,则要修改这里的Excel.XlWBATemplate.xlWBATWorksheet参数,为制定的路径

workbook = excel.Workbooks.Add(Type.Missing);

worksheet = (Excel.Worksheet)workbook.ActiveSheet;

//写入表头/////////////////////////////////////////////////////////////////////////////////////////

worksheet.Cells[1, 1] = "OBJECTID";

worksheet.Cells[1, 2] = "姓名";

worksheet.Cells[1, 3] = "性别";//这里看你自己 的信息列数

//写入数据有效性

Excel.Range range2 = worksheet.Columns[1];

range2.Validation.Add(Excel.XlDVType.xlValidateList, Excel.XlDVAlertStyle.xlValidAlertStop, Type.Missing, "男,女", Type.Missing);//此处不需要自己输入值,而是通过下拉框进行选择性别值

Excel.Range range = worksheet.Rows[1];

range.Validation.Delete();//消除第一行的数据有效性;

try

{

worksheet.SaveAs(xlsFilePath, miss, miss, miss, miss, miss, Excel.XlSaveAsAccessMode.xlNoChange, miss, miss, miss);

}

catch

{

}

//关闭表格

workbook.Close(false, miss, miss);

excel.Workbooks.Close();

//释放资源

excel.Quit();

//询问是否打开生成的文档

if (MessageBox.Show("导出文档模板成功! 文档路径:" + xlsFilePath + ",是否需要立即打开!", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK)

{

System.Diagnostics.Process.Start(xlsFilePath);//打开excel

}

}

网上找了很多都没有成功的模板导出,现在终于自己有了完整的代码,换一台电脑应该没错了吧!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: