首页
名片设计
CorelDRAW
Illustrator
AuotoCAD
Painter
其他软件
Photoshop
Fireworks
Flash
»
彩色名片
»
PVC卡
»
彩色磁性卡
»
彩页/画册
»
个性印务
»
彩色不干胶
»
明信片
»
明信片
»
彩色书签
»
门挂
»
其他产品与服务
»
创业锦囊
»
办公用品
»
信封、信纸
»
便签纸、斜面纸砖
»
无碳复印纸
»
海报
»
大篇幅印刷
»
KT板
»
海报
»
横幅
怎么由DataSet将数据导入Excel?
/// <summary>
/// 将DataSet里所有数据导入Excel.
/// 需要添加COM: Microsoft Excel Object Library.
/// using Excel;
/// </summary>
/// <param name=\"filePath\"></param>
/// <param name=\"ds\"></param>
public static void ExportToExcel(string filePath, DataSet ds)
{
object oMissing = System.Reflection.Missing.Value;
Excel.ApplicationClass xlApp = new Excel.ApplicationClass();
try
{
// 打开Excel文件。以下为Office 2000.
Excel.Workbook xlWorkbook = xlApp.Workbooks.Open(filePath, oMissing, oMissing, oMissing, oMissing, oMissing,
oMissing, oMissing, oMissing, oMissing, oMissing, oMissing,
oMissing);
Excel.Worksheet xlWorksheet;
// 循环所有DataTable
for( int i=0; i<ds.Tables.Count; i++ )
{
// 添加入一个新的Sheet页。
xlWorksheet = (Excel.Worksheet)xlWorkbook.Worksheets.Add(oMissing,oMissing,1,oMissing);
// 以TableName作为新加的Sheet页名。
xlWorksheet.Name = ds.Tables[i].TableName;
// 取出这个DataTable中的所有值,暂存于stringBuffer中。
string stringBuffer = \"\";
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);
// 选中这个sheet页中的第一个单元格
((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();
}
}
返回类别:
教程
上一教程:
Vb.Net问题集
下一教程:
控件的拖动和缩放技术全解
您可以阅读与"
怎么由DataSet将数据导入Excel?
"相关的教程:
·
将ASP.net中的Table中的数据导入到Execl
·
在ASP.NET中将数据直接输出成Excel内容
·
使用 Visual C# .NET 向 Microsoft Excel 2002 传输 XML 数据
·
C#异步数据接收串口操作类
·
使用COBOL.net访问数据库
快精灵印艺坊 版权所有
首页
会员中心
在线印刷
在线编辑
付款方式
索取样品
设计指南
连锁门店
网站地图
关于我们
友情链接