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;

}

最新文章

  1. Android M(6.0) 权限相关
  2. Request 和 Response 原理
  3. 关于int类型的赋值语句正确的有
  4. WeedFS依赖库 0.6.1
  5. [Java面试一]面试复习大纲.
  6. VS2013 密钥
  7. jboss7(01)服务器开启和关闭命令
  8. java CyclicBarrier
  9. nss_12 上传文件后返回jsonresult结果,IE中出现文件下载框
  10. Linux:crontab命令学习
  11. VTK中国文字显示和简单的医疗图像浏览软件
  12. 关于js中for in的缺陷浅析
  13. BZOJ 2809: [Apio2012]dispatching [斜堆]
  14. PHP判断ip地址是否合法
  15. ssh中文乱码解决
  16. LINUX下 USB转串口 【转】
  17. 新唐ISP操作步骤(转)
  18. Oracle安装部署之命令建库
  19. js 时间操作积累
  20. Firebird shadow

热门文章

  1. 线程之间的通信socketpair【学习笔记】【原创】
  2. mysql数据库ip与字符串
  3. 【转】Java 并发编程:线程间的协作(wait/notify/sleep/yield/join)
  4. poj 3517(约瑟夫环问题)
  5. 洛谷 P3952 时间复杂度【模拟】
  6. bzoj 2528: [Poi2011]Periodicity【kmp+构造】
  7. .Net Core之Configuration
  8. php安装的扩展php -m可以看到,但是phpinfo()看不到,php-fpm关闭了重新打开还是不行?
  9. 转】[1.0.2] 详解基于maven管理-scala开发的spark项目开发环境的搭建与测试
  10. python代码覆盖率coverage简介与用法