- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
datatable用execl导出2
C#将DataTable海量数据导出到Excel 分类:C#2010-08-31 14:443290人阅读评论(2)收藏举报c#excelstringobjectnullexception将DataTable中的大量数据导出到Excel表格中。但每张Excel表单只能有65536行,所以当DataTable数据多于65536行时,Excel要考虑分页功能。通过查阅相关资料,得到导出方法。代码在Office 2003 环境下通过。末验证其它Office版本。[c-sharp]view plaincopyprint?using Excel = Microsoft.Office.Interop.Excel; public Excel.Application m_xlApp = null; /// summary /// 将DataTable数据导出到Excel表/// /summary /// param name=tmpDataTable要导出的DataTable/param /// param name=strFileNameExcel的保存路径及名称/param public void DataTabletoExcel(System.Data.DataTable tmpDataTable, string strFileName) { if (tmpDataTable == null) { return; } long rowNum = tmpDataTable.Rows.Count;//行数int columnNum = tmpDataTable.Columns.Count;//列数Excel.Application m_xlApp = new Excel.Application(); m_xlApp.DisplayAlerts = false;//不显示更改提示m_xlApp.Visible = false; Excel.Workbooks workbooks = m_xlApp.Workbooks; Excel.Workbook workbook = workbooks.Add(Excel.XlWBATemplate.xlWBATWorksheet); Excel.Worksheet worksheet = (Excel.Worksheet)workbook.Worksheets[1];//取得sheet1 try { if (rowNum 65536)//单张Excel表格最大行数{ long pageRows = 65535;//定义每页显示的行数,行数必须小于65536 int scount = (int)(rowNum / pageRows);//导出数据生成的表单数if (scount * pageRows rowNum)//当总行数不被pageRows整除时,经过四舍五入可能页数不准{ scount = scount + 1; } for (int sc = 1; sc = scount; sc++) { if (sc 1) { object missing = System.Reflection.Missing.Value; worksheet = (Excel.Worksheet)workbook.Worksheets.Add( missing, missing, missing, missing);//添加一个sheet } else { worksheet = (Excel.Worksheet)workbook.Worksheets[sc];//取得sheet1 } string[,] datas = new string[pageRows + 1, columnNum]; for (int i = 0; i columnNum; i++) //写入字段{ datas[0, i] = tmpDataTable.Columns[i].Caption;//表头信息} Excel.Range range = worksheet.get_Range(worksheet.Cells[1, 1], worksheet.Cells[1, columnNum]); range.Interior.ColorIndex = 15;//15代表灰色range.Font.Bold = true; range.Font.Size = 9; int init = int.Parse(((sc - 1) * pageRows).ToString()); int r = 0; int index = 0; int result; if (pageRows * sc = rowNum) { result = (int)rowNu
文档评论(0)