欢迎光临
我们一直在努力

怎么由DataSet将数据导入Excel?-.NET教程,数据库应用

建站超值云服务器,限时71元/月

/// <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();

}

}

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » 怎么由DataSet将数据导入Excel?-.NET教程,数据库应用
分享到: 更多 (0)