DataSet数据导入Excel的c#代码:
/// <summary>
/// 将DataSet里所有数据导入Excel.
/// 需要添加COM: Microsoft Excel Object Library.
/// using Excel;
/// </summary>
/// <param name="filePath"></param>
/// <param name="ds"></param>
private void ExportToExcel(string filePath, DataSet ds)
{
object oMissing = System.Reflection.Missing.Value;
Excel.ApplicationClass xlApp = new Excel.ApplicationClass();
try
{
//打开EXCEL文件
Excel.Workbook xlWorkbook = xlApp.Workbooks.Open(filePath, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing,
oMissing, oMissing, oMissing,oMissing,oMissing);
// Excel.Workbook xlWorkbook=xlApp.Workbooks.只有Open属性,没有Write属性
Excel.Worksheet xlWorksheet;
//循环所有DataTable
for (int i = 0; i < ds.Tables.Count; i++)
{
//添加入一个新的Sheel页
xlWorksheet = (Excel.Worksheet)xlWorkbook.Worksheets.Add(oMissing, oMissing, 1, oMissing);
//以TableName作为新加的sheel页名
xlWorksheet.Name = ds.Tables[i].TableName;
//取出这个DataTable中的所有值,暂时存于stringBuffer中
string stringBuffer = "";
// for(int m=0;m<ds.Tab
for (int j = 0; j < ds.Tables[i].Rows.Count; j++)
{
for (int k = 0; k < ds.Tables[i].Columns.Count; k++)
{
stringBuffer += ds.Tables[i].Rows[j][k].ToString();
if (k < ds.Tables[i].Columns.Count - 1)
stringBuffer += "\t";
}
stringBuffer += "\n";
}
//利用系统剪贴板
System.Windows.Forms.Clipboard.SetDataObject("");
//将stringBuffer放入剪贴板
System.Windows.Forms.Clipboard.SetDataObject(stringBuffer);
//选中这个sheel页中的第一个单元格
((Excel.Range)xlWorksheet.Cells[1, 1]).Select();
//粘贴
xlWorksheet.Paste(oMissing, oMissing);
//清空系统剪贴板
System.Windows.Forms.Clipboard.SetDataObject("");
}
//保存并关闭这个工作薄
xlWorkbook.Close(Excel.XlSaveAction.xlSaveChanges, oMissing, oMissing);
System.Runtime.InteropServices.Marshal.ReleaseComObject(xlWorkbook);
xlWorkbook = null;
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{
//释放...
xlApp.Quit();
System.Runtime.InteropServices.Marshal.ReleaseComObject(xlApp);
xlApp = null;
GC.Collect();
}
}
}
相关视频
相关阅读 asp.net实现C#代码加亮显示使用Web服务将C#代码转换为VB.NET代码用C#代码生成一个简单的PDF文件listary使用教程 listary的使用技巧iPadOS beta 2下载 iPadOS beta 2固件下载地址iOS 13 beta 2下载 iOS 13 beta 2固件下载地址DOTA2自走棋怎么下载 DOTA2自走棋进入方法macOS 10.15支持哪些设备升级 macOS Catalina可升级设备一览
热门文章 没有查询到任何记录。
最新文章
什么是.NET中的TDD?ASP.NET AJAX入门简介
WebMatrix入门教程VC++2008中如何调用GetOpenFileName打开文件PlaySound函数在VC++6.0中如何播放音乐及声请问VC++回调函数怎么用
人气排行 嵌入式实时操作系统VxWorks入门教程ArrayList 与 string、string[] 的转换C#遍历整个文件夹及子目录的文件代码WebMatrix入门教程asp.net判断文件或文件夹是否存在c#判断数据NULL值的方法vc++6.0怎么写Windows简单窗口代码.net解决数据导出excel时的格式问题
查看所有0条评论>>