dtatset导出到excel中是空的

问题描述

publicvoidDataSetToExcel(DataSetdataSet,stringfilename){if(dataSet.Tables.Count==0){return;}try{//建立Excel对象Microsoft.Office.Interop.Excel.Applicationexcel=newMicrosoft.Office.Interop.Excel.Application();//excel.Application.Workbooks.Add(true);Microsoft.Office.Interop.Excel.Workbookworkbook=excel.Workbooks.Add(Microsoft.Office.Interop.Excel.XlWBATemplate.xlWBATWorksheet);Microsoft.Office.Interop.Excel.Worksheetworksheet=(Microsoft.Office.Interop.Excel.Worksheet)workbook.Worksheets[1];//excel.Visible=isShowExcle;//Microsoft.Office.Interop.Excel.Worksheetworksheet=(Microsoft.Office.Interop.Excel.Worksheet)excel.Worksheets[1];Microsoft.Office.Interop.Excel.Rangerange;workbook=excel.Workbooks.Add(System.Reflection.Missing.Value);for(intk=0;k<dataSet.Tables.Count;k++){System.Data.DataTabledataTable=dataSet.Tables[k];introwNumber=dataTable.Rows.Count;//不包括字段名if(rowNumber!=0){intcolumnNumber=dataTable.Columns.Count;intcolIndex=0;worksheet=(Microsoft.Office.Interop.Excel.Worksheet)workbook.Worksheets.Add(System.Reflection.Missing.Value,System.Reflection.Missing.Value,System.Reflection.Missing.Value,System.Reflection.Missing.Value);worksheet.Name=dataSet.Tables[k].TableName;//生成字段名称foreach(DataColumncolindataTable.Columns){colIndex++;excel.Cells[1,colIndex]=col.ColumnName;range=(Range)worksheet.Cells[1,colIndex];range.Interior.ColorIndex=6;range.Font.Bold=true;}object[,]objData=newobject[rowNumber,columnNumber];for(intr=0;r<rowNumber;r++){for(intc=0;c<columnNumber;c++){objData[r,c]=dataTable.Rows[r][c];}//Application.DoEvents();}//写入Excelrange=worksheet.get_Range(excel.Cells[2,1],excel.Cells[rowNumber+1,columnNumber]);//range.NumberFormat="@";//设置单元格为文本格式range.Value2=objData;worksheet.get_Range(excel.Cells[2,1],excel.Cells[rowNumber+1,2]).NumberFormat="@";worksheet.get_Range(excel.Cells[2,1],excel.Cells[rowNumber+1,2]).NumberFormat="yyyy-m-dh:mm:ss";worksheet.Cells.VerticalAlignment=Microsoft.Office.Interop.Excel.Constants.xlCenter;worksheet.Cells.HorizontalAlignment=Microsoft.Office.Interop.Excel.Constants.xlCenter;worksheet.Columns.EntireColumn.AutoFit();}}workbook.SaveAs(filename);workbook.Close();excel.Quit();DialogResultbtn=MessageBox.Show(null,"文件“"+filename+"”保存成功。是否现在打开?","信息",MessageBoxButtons.YesNo,MessageBoxIcon.Information);if(btn==DialogResult.Yes){ApplicationClassexcelApp=newApplicationClass();Workbookworkbook2=excelApp.Workbooks.Open(filename);excelApp.Visible=true;}//appExcel.Quit();GC.Collect();}catch(Exceptionex){MessageBox.Show(ex.ToString());}}

解决方案

解决方案二:
用这个:
解决方案三:
参考:

时间: 2024-10-19 08:03:17

dtatset导出到excel中是空的的相关文章

导出excel 时 只要不用下载工具迅雷直接下载一切正常,但当使用下载工具时导出的EXCEL就为空内容,

问题描述 导出excel时,我用这个下载:StringBuildersb=newStringBuilder();System.IO.StringWritersw=newSystem.IO.StringWriter(sb);System.Web.UI.HtmlTextWriterhw=newSystem.Web.UI.HtmlTextWriter(sw);Response.Clear();Response.Buffer=true;//Response.AppendHeader("Content-D

列出SQL SERVER 所有表、字段定义,类型,长度,一个值等信息,并导出到Excel 中

excel|server SET ANSI_NULLS OFF GO SET NOCOUNT ON GO           SET LANGUAGE 'Simplified Chinese' go DECLARE @tbl nvarchar(200),@fld nvarchar(200),@sql nvarchar(4000),@maxlen int,@sample nvarchar(40)           SELECT d.name TableName,a.name FieldName,

把指定的DataSet中的内容导出到Excel中

  /// <summary>  /// 把指定的DataSet中的内容导出到Excel中.  /// </summary>  /// <param name="ds">ds参数为DateSet对象</param>  /// <param name="ImpStr">该字符串用来指定一些字段来导出,其使用格式为:aaa|AAA,bbb|BBB   小写字符串为在Excel表中显示该字段的列标题,大写表示字段

C#将DateTable表数据导出到Excel中

问题描述 在VisualC#中调用Excel表格,并不像读取Excel表格中的数据那么容易了,因为在VisualC#中调用Excel表格要使用到Excel的COM组件.以VS2005为例,首先添加引用--在COM选项中,添加MicrosfotExcel11.0ObjetLibrary. 然后在程序中引入命名空间,UsingMicrosoft.Office.Interop.Excel; 以下面几条语句来介绍一个Excel类中的几个对象. //实例化一个Excel应用程序对象Microsoft.Of

把WebForm数据导出到Excel中

excel|web|数据 上午给系统的订单管理部分添加了一个功能,把查询到的订单信息导出到Excel,供管理员分析用.以前写的代码如下: Response.Clear();Response.BufferOutput = true;Response.Charset = "GB2312";Response.AppendHeader("Content-Disposition","attachment;filename = FileName.xls");

快速删除excel中的空行和列

我们在利用Excel统计与分析对象时,数据的录入工作不可能一蹴而就,记录的添加.删除.剪切.合并是少不了的,在经过多次的编辑修改过程之后,在表格中往往会出现许多的空行.这些空行的存在既不美观,同时也影响了数据分析的结果,通常情况下要将其删除.如果表格中的空行较少,那么只需一行一行地删除,但是如果工作表很大(比如数千行),而表格中的空行又许多,手动一行一行删除,无疑会耗费许多的时力.如果大家经常遇到这样的烦恼,不妨试试下面这些方法,可以快速.干净.批量将有名无实的空行清理出局. "定位"

小弟请教如何将webcontrols.table的数据导出到excel中

问题描述 求代码 解决方案 解决方案二:参考:自己改一下,应该就行了.

机房收费系统——VB将MSHflexgrid控件中的数据导出为Excel

            在做机房收费系统的时候,许多窗体用到的一个功能,就是将从数据库中提取出来的数据导出到Excel中.   首先,引用Microsoft Excel 14.0 Object Library   然后,写代码     Public Sub OutDataToExcel(Flex As MSHFlexGrid) '导出至Excel Dim i As Integer Dim j As Integer Dim Line As Integer Dim outExcel As Excel

birt 导出excel时,有38个字段,导出的excel文件中数据都叠在一起,格式非常难看

问题描述 birt导出excel时,有38个字段,导出的excel文件中数据都叠在一起,格式非常难看,该问题怎么解决.thx 解决方案 解决方案二:给你看看我以前servlet导出Excel的例子publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{request.setCharacterEncoding("gbk");Employ