c# 导出DataSet到excel
public static bool ExportToExcel_dataSet(string queryNo, string conditions)
{
bool _bl = false;
try
{
Docmd.cnnOpen();
SqlCommand cmd = new SqlCommand();
cmd.CommandText = "dbo.sx_pro_QueryTest";
cmd.CommandType = CommandType.StoredProcedure;
cmd.Connection = Docmd.cnn;
cmd.CommandTimeout = 180;
SqlDataAdapter da = new SqlDataAdapter(cmd);
cmd.Parameters.AddWithValue("@QueryNo",queryNo);
cmd.Parameters.AddWithValue("@Whr", conditions);
DataSet ds = new DataSet();
da.Fill(ds,"t1");
DataTable dt = ds.Tables["t1"];
int qtyRows = dt.Rows.Count;
if(qtyRows==0)
{
Docmd.msgInfo("no records found. \r\n 没有找到记录");
goto line1;
}
int qtyCols = dt.Columns.Count;
int rn = 0;
int cn = 0;
object[,] objTitle = new object[1, qtyCols];
foreach (DataColumn dc in dt.Columns)
{
objTitle[0, cn] = dc.ColumnName;
cn++;
}
object[,] objData = new object[qtyRows, qtyCols];
foreach (DataRow dr in dt.Rows)
{
cn = 0;
foreach (DataColumn dc in dt.Columns)
{
objData[rn, cn] = dr[dc].ToString();
cn++;
}
rn++;
}
excel.Application xlApp = new excel.Application();
excel.Workbook wk = xlApp.Workbooks.Add();
excel.Worksheet sht = wk.Worksheets[1];
xlApp.Visible = true;
excel.Range myRange_Title = sht.Range[sht.Cells[1, 1], sht.Cells[1, qtyCols]];
myRange_Title.Value2 = objTitle;
excel.Range myRange = sht.Range[sht.Cells[2, 1], sht.Cells[qtyRows + 1, qtyCols]];
myRange.Value2 = objData;
sht.UsedRange.WrapText = false;
line1:
ds.Dispose();
cmd.Dispose();
}
catch(Exception ex)
{
Docmd.msgInfo(ex.Message);
}
finally
{
Docmd.cnnClose();
}
return _bl;
}
c# 导出DataSet到excel的更多相关文章
- WinForm导出DataSet到Excel
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...
- Delphi 导出数据至Excel的7种方法【转】
一; delphi 快速导出excel uses ComObj,clipbrd; function ToExcel(sfilename:string; ADOQuery:TADOQuery): ...
- Delphi 导出数据至Excel的7种方法
一; delphi 快速导出excel uses ComObj,clipbrd; function ToExcel(sfilename:string; ADOQuery:TADOQuery):bool ...
- 【C#常用方法】2.DataTable(或DataSet)与Excel文件之间的导出与导入(使用NPOI)
DataTable与Excel之间的互导 1.项目添加NPOI的引用 NPOI项目简介: NPOI是一个开源的C#读写Excel.WORD等微软OLE2组件文档的项目,特点是可以在没有安装Office ...
- C#实现Excel模板导出和从Excel导入数据
午休时间写了一个Demo关于Excel导入导出的简单练习 1.窗体 2.引用office命名空间 添加引用-程序集-扩展-Microsoft.Office.Interop.Excel 3.封装的Exc ...
- ASP.NET导出数据到Excel 实例介绍
ASP.NET导出数据到Excel 该方法只是把asp.net页面保存成html页面只是把后缀改为xlc不过excel可以读取,接下连我看看还有别的方式能导出数据,并利用模版生成. 下面是代码 新建 ...
- 一个方便且通用的导出数据到 Excel 的类库
一个方便且通用的导出数据到 Excel 的类库 起源: 之前在做一个项目时,客户提出了许多的导出数据的需求: 导出用户信息 导出业务实体信息 各种查询都要能导出 导出的数据要和界面上看到的一致 可以分 ...
- 从数据库导出数据到excel之POI操作
项目说明: 1:数据库中有两张表,主键关联 2:根据条件查询数据 3:处理为需要的数据封装类型,然后传到导出excel的方法中 <--框架部署就不详谈了,用的spring框架--> 补充: ...
- SpringBoot图文教程10—模板导出|百万数据Excel导出|图片导出「easypoi」
有天上飞的概念,就要有落地的实现 概念十遍不如代码一遍,朋友,希望你把文中所有的代码案例都敲一遍 先赞后看,养成习惯 SpringBoot 图文教程系列文章目录 SpringBoot图文教程1「概念+ ...
随机推荐
- mongodb02
memcached redis : kv数据库(key/value) mongodb 文档数据库,存储的是文档(Bson->json对象二进制化后叫bson,js的二进制对象,引擎是用js实现的 ...
- YTU 2438: 三人三鬼
2438: 三人三鬼 时间限制: 1 Sec 内存限制: 128 MB 提交: 35 解决: 9 题目描述 目标是将东岸的3人3鬼通过一只小船转移到西岸,希望以尽可能少的摆渡次数. 船的容量有限, ...
- linux块设备模型架构框架
Linux块设备的原理远比字符设备要复杂得多,尽管在linux这一块的方法论有很多相似之处,但考虑到它是用中块结构,它常常要搭配内存页管理,页缓冲块缓冲来改善硬盘访问的速度,按照块硬件最大的性能要求进 ...
- 《Iterative-GAN》的算法伪代码整理
花了一下午时间整理本人的论文Iterative-GAN的算法伪代码,由于篇幅较长,投会议方面的文章就不加入了,以后如果投期刊再说.留此存档.
- NDK相关收藏【转】
http://blog.csdn.net/column/details/anidea-ndk.html [转] 作者:conowen@大钟
- ubuntu 12.04 alt+tab无法切换窗口的问题(转载)
转自:http://www.2cto.com/os/201209/153282.html ubuntu 12.04 alt+tab无法切换窗口的问题 安装cpmpiz配置管理程序. sudo ...
- bzoj 2127 happiness【最小割+dinic】
参考:https://www.cnblogs.com/chenyushuo/p/5144957.html 不得不说这个建图方法真是非常妙啊 假设S点选理,T点选文,a[i][j]为(i,j)选文收益, ...
- [SDOI2019] 移动金币
分析 阶梯NIM模型:共有m+1堆石子,石子总数不超过n-m,求必胜的,即奇数堆石子数目异或和非零的局面数.补集转化,答案C(n,m)-奇数堆石子数目异或和位0的局面数. 可以想到按位dp,设f[i, ...
- Elementui实战知识点随记
1. Elementui实战知识点随记 1.1. 表单验证 对于复杂数据,类似于对象里面包含数组,每个数组又包含多个对象,表单验证我查看了网上很多资料都说Elementui不支持,实际上,经过我官网的 ...
- Luogu P1396 营救【最小生成树/二分答案/最短路】 By celur925
题目描述 “咚咚咚……”“查水表!”原来是查水表来了,现在哪里找这么热心上门的查表员啊!小明感动的热泪盈眶,开起了门…… 妈妈下班回家,街坊邻居说小明被一群陌生人强行押上了警车!妈妈丰富的经验告诉她小 ...