C# 导出Excel 求助 Excel csv 合并列excel csv 合并列 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 myxls 设置单元格的属性 跟table差不多 什么clospan的 挺好用的 你输出一个<table>就保存到.xls可以了,html的table懂得合并行或列吧(rowspan和colspan),这样做简单,不用引用什么dll 能否 写个 demo 参考下 万谢! 以前导出过,这个方法里获取了sheet对象,里面应该有所有的跨行跨列的API,你可以找找public bool ExportExcel(DataGridViewX dtSource, string saveFileName) { DataTable dt = (DataTable)dtSource.DataSource; if (dt.Rows.Count == 0||dt==null) { return false; } else { Microsoft.Office.Interop.Excel.Application xlApp = new Microsoft.Office.Interop.Excel.Application(); Microsoft.Office.Interop.Excel.Workbooks workbooks = xlApp.Workbooks; Microsoft.Office.Interop.Excel.Workbook workbook = workbooks.Add(Microsoft.Office.Interop.Excel.XlWBATemplate.xlWBATWorksheet);//创建sheet Microsoft.Office.Interop.Excel.Worksheet worksheet = (Microsoft.Office.Interop.Excel.Worksheet)workbook.Worksheets[1];//写死,只操作sheet1 //添加列标题 for (int i = 0; i < dt.Columns.Count; i++) { worksheet.Cells[1, i + 1] = dt.Columns[i].ColumnName; } //添加内容 for (int r = 0; r < dt.Rows.Count; r++) { for (int i = 0; i < dt.Columns.Count; i++) { worksheet.Cells[r + 2, i + 1] = dt.Rows[r][i]; } System.Windows.Forms.Application.DoEvents(); } worksheet.Columns.EntireColumn.AutoFit();//自适应列宽,很实用 Microsoft.Office.Interop.Excel.Range rg = worksheet.Range[worksheet.Cells[2, 2], worksheet.Cells[dt.Rows.Count + 1, 2]]; rg.NumberFormat = "00000000"; if (saveFileName != "") { try { workbook.Saved = true; workbook.SaveCopyAs(saveFileName); } catch (Exception ex) { throw new Exception(ex.Message); } } xlApp.Quit(); GC.Collect(); return true; } } http://blog.csdn.net/happy09li/article/details/7431967 Win7旗舰装SQL2008 无法在web服务器上启动调试。登录失败:未知的用户名或密码不正确... 请求帮助 简单问题欢迎抢分:C#字符串怎样交换两个指定位置字符(求最漂亮的做法) 如何选取datagridview的整列数据形成数组 c#中listview如何绑定数据库 ---SOS---请教 web应用程序中如何在一个新窗口中打开页面? GDI+ 的问题 有谁知道用于设计的WinForm怎么写? 谁能告诉我这段连接数据库的代码错在哪?我怀疑是我也不知道啊! 如何实现连续不间断向互联网发送数据包 WCF客户端的异常处理
{
DataTable dt = (DataTable)dtSource.DataSource;
if (dt.Rows.Count == 0||dt==null)
{
return false;
}
else
{
Microsoft.Office.Interop.Excel.Application xlApp = new Microsoft.Office.Interop.Excel.Application();
Microsoft.Office.Interop.Excel.Workbooks workbooks = xlApp.Workbooks;
Microsoft.Office.Interop.Excel.Workbook workbook = workbooks.Add(Microsoft.Office.Interop.Excel.XlWBATemplate.xlWBATWorksheet);//创建sheet
Microsoft.Office.Interop.Excel.Worksheet worksheet = (Microsoft.Office.Interop.Excel.Worksheet)workbook.Worksheets[1];//写死,只操作sheet1
//添加列标题
for (int i = 0; i < dt.Columns.Count; i++)
{
worksheet.Cells[1, i + 1] = dt.Columns[i].ColumnName;
}
//添加内容
for (int r = 0; r < dt.Rows.Count; r++)
{
for (int i = 0; i < dt.Columns.Count; i++)
{
worksheet.Cells[r + 2, i + 1] = dt.Rows[r][i];
}
System.Windows.Forms.Application.DoEvents();
}
worksheet.Columns.EntireColumn.AutoFit();//自适应列宽,很实用
Microsoft.Office.Interop.Excel.Range rg = worksheet.Range[worksheet.Cells[2, 2], worksheet.Cells[dt.Rows.Count + 1, 2]];
rg.NumberFormat = "00000000";
if (saveFileName != "")
{
try
{
workbook.Saved = true;
workbook.SaveCopyAs(saveFileName);
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
}
xlApp.Quit();
GC.Collect();
return true;
}
}