使用CarlosAg.ExcelXmlWriter的十进制数字

时间:2011-10-04 09:59:12

标签: decimal formatting

我很感激如何解决以下问题。

我使用CarlosAg.ExcelXmlWriter,我在Excel中格式化十进制数时遇到问题。

示例:我有SQL字段TestField,Decimal(15,2)),值为123.45

当我使用CarlosAg.ExcelXmlWriter将结果(DataSet和一些C#例程)传输到Excel时,结果始终为12345 - 好像Carlos无法正确识别十进制数。

我尝试在SQL端和Carlos端格式化数据,结果始终是连接数(123.45 - > 12345)

附注 - 我通过将数字转换为varchar来解决问题,但这对我们的客户来说是不可接受的,因为他无法在excel中格式化字符串(比如制作SUM等)和他希望Excel字段显式数字而不是字符串。

我几乎可以得到一些简单的答案。

由于 达米尔

我用NumberFormat尝试了Carlos:

            //style2.NumberFormat = "Scientific";                
            //style2.NumberFormat = "General Number";
            //style2.NumberFormat = "###,###.00";
            //style2.NumberFormat = "###.###,00";

1 个答案:

答案 0 :(得分:0)

...

case "System.Decimal":
case "System.Double":
wc = new WorksheetCell(dtrrow[col.ColumnName].**ToString().Replace(",",".")**, DataType.Number, style_number);
row.Cells.Add(wc);

...