需引用以下:
using Excel = Microsoft.Office.Interop.Excel;
using System.Reflection;
private void btnSave_Click(object sender, EventArgs e)
{
if (this.tbfilePath.Text.Trim() == "")//获得文件保存路径
{
MessageBox.Show("保存路径不能为空!", "提示:", MessageBoxButtons.OK, MessageBoxIcon.Information);
return;
}
//创建Application对象
Excel.Application app = new Excel.Application();
app.Visible = true;
//得到WorkBook对象, 下面的是打开已有的文件
Excel.Workbook Book = app.Workbooks._Open(@"E:\模板.xls",//此处为绝对路径。
Missing.Value, Missing.Value, Missing.Value, Missing.Value
, Missing.Value, Missing.Value, Missing.Value, Missing.Value
, Missing.Value, Missing.Value, Missing.Value, Missing.Value);
if (app == null)
{
return;
}
//指定要操作的Sheet
Excel.Worksheet sheet = app.ActiveSheet as Excel.Worksheet; //默认的为sheet1
//写入数据
Excel.Range sno = sheet.get_Range("B3", Missing.Value);//填充到B3这个单元格
sno.Value2 = "07055528";
Excel.Range sname = sheet.get_Range("D3", Missing.Value);
sname.Value2 = "ninjia";
Excel.Range classno = sheet.get_Range("F3", Missing.Value);
classno.Value2 ="07055521"
//保存WorkBook
string fileName = stuName+"_模板_" + System.DateTime.Now.ToShortDateString() + ".xls";//动态构造文件名
string filePath = this.tbfilePath.Text.Trim();
if (filePath.Substring(filePath.Length - 1, 1) != "\\")//如果路径结尾有\这不用加"\\",'\'为转义字符
{
filePath = filePath + "\\";
}
Book.SaveAs(@filePath + fileName,//另存为路径
Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value,
Excel.XlSaveAsAccessMode.xlNoChange, Missing.Value, Missing.Value, Missing.Value,
Missing.Value, Missing.Value);
//关闭文件
sheet = null;
Book = null;
app.Quit();
app = null;
}