导出excel想了下,是不是得先生成excel文件,然后再让客户端下载excel文件?还有一些单元格的拆分和合并的问题,忘大家指点下
解决方案 »
- 向数据库插入数据的问题,大家帮忙看看是怎么回事?
- if else语句太多,有什么好的方法解决?
- Asp.net中调用OCX控件失败,提示“对象不支持此属性或方法”
- ASP.NET导出PDF的函数(如下),只能导出一次,能不能让它可以导出多次,应该怎么修改,请赐教!
- vs2010开发web程序怎么判断程序运行的状态
- 在做论坛中怎么主题循环显示恢复的内容呀
- 急求好用的水晶报表10.0,我想用于web打印
- Response.Redirect 问题????
- 怎么让一个页面的变量,保持不变,也就是说页面刷新时,该变量不变!
- 打开有这密码的access的连接字符串如何写
- 把C#转化为json格式
- http:400 错误
Interop.Excel.dll
关键代码:
public static void DataTabletoExcel(DataTable tmpDataTable, string strFileName)
{
if (tmpDataTable != null)
{
int rowNum = tmpDataTable.Rows.Count;
int columnNum = tmpDataTable.Columns.Count;
int rowIndex = 1;
int columnIndex = 0;
Application xlApp = new ApplicationClass();
xlApp.DefaultFilePath = "";
xlApp.DisplayAlerts = true;
xlApp.SheetsInNewWorkbook = 1;
Workbook xlBook = xlApp.Workbooks.Add(true);
Worksheet worksheet = (Worksheet) xlBook.Worksheets[1];
Range range = null;
foreach (DataColumn dc in tmpDataTable.Columns)
{
columnIndex++;
xlApp.Cells[rowIndex, columnIndex] = dc.Caption;
}
string[,] arr = new string[rowNum, columnNum];
for (int i = 0; i < rowNum; i++)
{
for (int j = 0; j < columnNum; j++)
{
arr[i, j] = tmpDataTable.Rows[i][j].ToString();
}
}
range = (Range) worksheet.Cells[2, 1];
range.get_Resize(rowNum, columnNum).Value2 = arr;
xlBook.SaveCopyAs(strFileName);
}
}