日期:2014-05-20  浏览次数:20404 次

用xml生成excel
最近用xml生成excel,代码其中一段如下:
C# code
sbStr.Append(@"<Workbook xmlns='urn:schemas-microsoft-com:office:spreadsheet'
                     xmlns:o='urn:schemas-microsoft-com:office:office' xmlns:x='urn:schemas-microsoft-com:office:excel'
                     xmlns:ss='urn:schemas-microsoft-com:office:spreadsheet' xmlns:html='http://www.w3.org/TR/REC-html40'>");


遇到的问题是,excel某一列,比如Description列,内容里有大量字符串,生成excel之后这些字符串显示为"#############。。。无数个#号"
然后我在
C# code
sbStr.Append(@"<Style ss:ID='new'><NumberFormat ss:Format='@'/><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>
                     <Interior ss:Color='#ACD6FF' ss:Pattern='Solid'/>

                     <Alignment ss:Vertical='Center' ss:WrapText='1'/>

                     </Style>");

加入了
C# code
<Alignment ss:Vertical='Center' ss:WrapText='1'/>
这句,修正了一部份#号的问题,但是仍然有很多#号还在,请问有谁以前遇到过的呢。

------解决方案--------------------
数字、时间类型?
------解决方案--------------------
试试自动调整列宽能否解决。
range.EntireColumn.AutoFit();
------解决方案--------------------
没有遇到过