我想把dataset里面的数据导出到excel。为什么数据没有插入阿? 我在网上找了很多,好像都差不多,我是菜鸟,谁能发给我一个源码研究研究,谢谢了 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 use "oledb" to export data to excelref:http://www.codeproject.com/csharp/excel_using_oledb.asp export data from dataset to other dbref:http://blog.csdn.net/knight94/archive/2006/05/01/704316.aspx 我是按照网上的用dataview 的方法写的,可是dataset的数值插入不了到excel表里面,有没有完整的导出csv格式的源码也可以阿!我第一次接触对office操作,真的不太明白是怎么回事。 SaveFileDialog sfd = new SaveFileDialog(); sfd.Title = "请选择将导出的EXCEL文件存放路径"; sfd.ShowDialog(); if (sfd.FileName != "") { Excel.Application xlApp = new Excel.Application(); if (xlApp == null) { MessageBox.Show("无法创建Excel对象,可能您的机器未安装Excel"); return; } Excel.Workbooks workbooks = xlApp.Workbooks; Excel.Workbook workbook = workbooks.Add(Excel.XlWBATemplate.xlWBATWorksheet); Excel.Worksheet worksheet = (Excel.Worksheet)workbook.Worksheets[1]; DataTable dt1 = (DataTable)dataGridView1.DataSource; for (int i = 0; i < dt1.Rows.Count; i++) { for (int j = 0; j < dt1.Columns.Count; j++) { if (i == 0) { worksheet.Cells[1, j + 1] = dt1.Columns[j].ColumnName; } worksheet.Cells[i + 2, j + 1] = dt1.Rows[i][j].ToString(); } } workbook.Saved = true; workbook.SaveCopyAs(sfd.FileName); System.Runtime.InteropServices.Marshal.ReleaseComObject(worksheet); worksheet = null; System.Runtime.InteropServices.Marshal.ReleaseComObject(workbook); workbook = null; workbooks.Close(); System.Runtime.InteropServices.Marshal.ReleaseComObject(workbooks); workbooks = null; xlApp.Quit(); System.Runtime.InteropServices.Marshal.ReleaseComObject(xlApp); xlApp = null; } 我大概看明白了,你这个是选择存储后对excel进行插入操作的,可是我现在还有点问题不太明白,我现在已经把我的数据库的所有需要备份内容都放进了一个dataset了,可是我好像没有看见你对dataset的引用,我现在做的是三层结构,我现在不太知道怎么把它的值返回 注册表,关于写入和读取Dword值的方法 如何在循环时不让程序占100%cpu? c# tabcontrol 左右布局 散分~美国一家公司年薪40万的面试题! 为什么在WinForm中,只要在DataGrid中选定内定几个字,再点Ctrl+C就报错? 窗体载入时画线问题 怎样实现类的定义和实现分开 感觉 virtual 没啥作用,给举个例子! 关于模拟登陆网站,高分求取(在线等...) C#中该怎么发自定义消息? 一个没有思路的问题, 请教 求助:日期格式的转换问题。
http://www.codeproject.com/csharp/excel_using_oledb.asp
ref:
http://blog.csdn.net/knight94/archive/2006/05/01/704316.aspx
sfd.Title = "请选择将导出的EXCEL文件存放路径";
sfd.ShowDialog();
if (sfd.FileName != "")
{
Excel.Application xlApp = new Excel.Application();
if (xlApp == null)
{
MessageBox.Show("无法创建Excel对象,可能您的机器未安装Excel");
return;
}
Excel.Workbooks workbooks = xlApp.Workbooks;
Excel.Workbook workbook = workbooks.Add(Excel.XlWBATemplate.xlWBATWorksheet);
Excel.Worksheet worksheet = (Excel.Worksheet)workbook.Worksheets[1];
DataTable dt1 = (DataTable)dataGridView1.DataSource;
for (int i = 0; i < dt1.Rows.Count; i++)
{
for (int j = 0; j < dt1.Columns.Count; j++)
{
if (i == 0)
{
worksheet.Cells[1, j + 1] = dt1.Columns[j].ColumnName;
}
worksheet.Cells[i + 2, j + 1] = dt1.Rows[i][j].ToString();
}
}
workbook.Saved = true;
workbook.SaveCopyAs(sfd.FileName);
System.Runtime.InteropServices.Marshal.ReleaseComObject(worksheet);
worksheet = null;
System.Runtime.InteropServices.Marshal.ReleaseComObject(workbook);
workbook = null;
workbooks.Close();
System.Runtime.InteropServices.Marshal.ReleaseComObject(workbooks);
workbooks = null;
xlApp.Quit();
System.Runtime.InteropServices.Marshal.ReleaseComObject(xlApp);
xlApp = null;
}