C#导出Excel 为Excel动态设置列名???

别吵_我睡会儿先 2010-11-04 05:54:38


string filePath = System.Windows.Forms.Application.StartupPath + "\\Board.xls";
if (!File.Exists(filePath))
{


//******************************************************
Microsoft.Office.Interop.Excel.Application xls_exp = null; int rowindex = 1; int colindex = 0; //创建一个workbook,一个worksheet
Microsoft.Office.Interop.Excel._Workbook xls_book = null; Microsoft.Office.Interop.Excel._Worksheet xls_sheet = null;
try
{
string[] tt = new string[] { "客户简称", "客户姓名", "联系电话", "银行账号", "账户名称", "账户性质" };
xls_exp = new Microsoft.Office.Interop.Excel.ApplicationClass();
xls_book = xls_exp.Workbooks.Add(true);
xls_sheet = (Microsoft.Office.Interop.Excel._Worksheet)xls_book.ActiveSheet;
xls_sheet.Columns.NumberFormatLocal = "@";
xls_sheet.Name = "RelationerTable";
xls_sheet.Columns.se
foreach (string s in tt)
{
//这里怎么动态设置列名啊!!!!!!!!!!!!!

}


xls_exp.Visible = true;

object missing = System.Reflection.Missing.Value;
xls_exp.ActiveWorkbook.SaveAs(filePath, missing, missing, missing, missing, missing, Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlShared, missing, missing, missing, missing, missing);

}
catch (Exception ex)
{

}
//******************************************************
}
else
{
System.Diagnostics.Process.Start(System.Windows.Forms.Application.StartupPath + "\\Board.xls");
}



拜托了!Microsoft.Office.Interop.Excel._Worksheet的列名设置!!!
...全文
630 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
机器人 2010-11-05
  • 打赏
  • 举报
回复
通过Excel的Range对象或者Cell,给单元格赋值。
但说实话用C#操作Excel COM对象实在是很痛苦的事,你要写一堆MissingObject

http://blog.csdn.net/fangxinggood/archive/2006/04/08/655313.aspx
SunFlower 2010-11-05
  • 打赏
  • 举报
回复
Range的方法应该可以,我用的是vc,也用到过
changeZ 2010-11-05
  • 打赏
  • 举报
回复
学习中...
浪子-无悔 2010-11-05
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 net_lover 的回复:]

列名的方法

<Row ss:AutoFitHeight='1'>
<Cell ss:StyleID='Header'><Data ss:Type='String'>序号</Data></Cell>
<Cell ss:StyleID='Header'><Data ss:Type='String'></Data></Cell>
<Cell ss:StyleID='Header'><Dat……
[/Quote]
还是大哥的回复经典哈!!!
Naga 2010-11-05
  • 打赏
  • 举报
回复
设置一个变量不就可以了?
孟子E章 2010-11-05
  • 打赏
  • 举报
回复
列名的方法

<Row ss:AutoFitHeight='1'>
<Cell ss:StyleID='Header'><Data ss:Type='String'>序号</Data></Cell>
<Cell ss:StyleID='Header'><Data ss:Type='String'></Data></Cell>
<Cell ss:StyleID='Header'><Data ss:Type='String'></Data></Cell>
<Cell ss:StyleID='Header'><Data ss:Type='String'></Data></Cell>
<Cell ss:StyleID='Header'><Data ss:Type='String'></Data></Cell>
</Row>

前面设置下格式
<Style ss:ID='Header'><Borders><Border ss:Position='Bottom' ss:LineStyle='Continuous' ss:Weight='1'/>
<Border ss:Position='Left' ss:LineStyle='Continuous' ss:Weight='1'/>
<Border ss:Position='Right' ss:LineStyle='Continuous' ss:Weight='1'/>
<Border ss:Position='Top' ss:LineStyle='Continuous' ss:Weight='1'/></Borders>
<Font ss:FontName='宋体' x:CharSet='134' ss:Size='18' ss:Color='#FF0000' ss:Bold='1'/></Style>

这样就可以了,生成方法参见

http://dotnet.aspx.cc/file/Export-Gridview-To-Excel-With-Multi-Sheet.aspx
  • 打赏
  • 举报
回复
JustACoder 的链接解决了 谢谢
bryht 2010-11-04
  • 打赏
  • 举报
回复
把Excel另存为XML格式,用文本存效率高也简单,可以上网搜近身剪的博客,不过这种方法不能存图片
  • 打赏
  • 举报
回复
请高手 指教指教 啊
g505149841 2010-11-04
  • 打赏
  • 举报
回复
你这个方法导出效率不高的吧,上万的数据导出要假死的吧。。。

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧