C#对Excel表格进行操作

如题,我已经将一个excel中的数据读入datagridview ,进行操作后想存入一个新的excel表格,能不能让它自动生成一个新表格,而不用先手动生成再往里面填充数据,求助!!!
ps:如果有相应代码 能看看更好啦!!谢谢了

第1个回答  2011-05-13
我这恰好有的。前段时间没事的时候做的一个的。。
Microsoft.Office.Interop.Excel.Application excel = new Microsoft.Office.Interop.Excel.Application();

Microsoft.Office.Interop.Excel._Workbook myWorkbook; //工作薄实例声明
Microsoft.Office.Interop.Excel._Worksheet myWorksheet; //工作表实例声明
excel.Application.Workbooks.Add(true); //不存在相同文件,则建立一个新的文件
myWorkbook = excel.ActiveWorkbook; //工作薄赋值为excel中的已激活工作薄
myWorksheet = (Microsoft.Office.Interop.Excel._Worksheet)myWorkbook.ActiveSheet; //工作表赋值为工作簿中已激活的工作表

//获取数据库中的行数,并将其保存到excel中
for (int i = 0; i < IDStrings.Count; i++)
{
myWorksheet.Cells[i + 2, 1] = IDStrings[i].ToString();
myWorksheet.Cells[i + 2, 2] = NameStrings[i].ToString();
myWorksheet.Cells[i + 2, 3] = RoomStrings[i].ToString();
myWorksheet.Cells[i + 2, 4] = HomeAddressStrings[i].ToString();
}
myWorksheet.Name = "sheetTest"; //给工作表取名字
//将工作簿另存为
myWorkbook.SaveAs(@"D:\test5.xlsx",missing,missing,missing,missing,missing,
Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlNoChange,missing,missing,missing
, missing, missing);
myWorkbook.Close(null, null, null); //关闭工作簿
excel.Quit(); //退出excel
excel = null; //赋值为NULL
其中missing 是System.Reflection.Missing.Value;
这里面主要是saveas的方法的。。本回答被提问者采纳
相似回答