vb.net 2010 Excel将文本字段转换为十进制

时间:2017-10-07 12:04:36

标签: excel vb.net

我正在从vb.net listview表创建一个excel对象,只需创建一个F(x,y)数组,创建一个范围并将数组中的值放在该范围内,如下所示。

 shXL.Range(Startcell,AEndCell).Value = F

然而,有些字段是数字的,我希望它们被格式化为两位小数,EXCEL将它们识别为小数

我在Excel工作表中最终得到的是许多绿色三角形,告诉我它们是文本字段。

如何使用工作表转换范围,将A5,I20格式化为小数。

我试过:(x,y).numberformat =" 00.00"它可以格式化为2dp,但仍将单元格视为文本。

此外,是否可以Excel汇总范围?怎么可能?

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

shXL.Range(Startcell,AEndCell).Value = F

'// Loop over same range and convert to decimal
For Each cell In shXl.Range(Startcell,AEndCell)
    With cell
        .Value = CDec(.Value)
    End With
Next
  

此外,是否可以Excel汇总范围?怎么可能?

如果Excel无法对范围求和,我认为Excel不会像电子表格产品那么远!

假设您要在中执行此操作,则需要使用应用程序的实例。我会在您的代码中假设XL

mySumValue = XL.WorksheetFunction.Sum(shXL.Range(Startcell,AEndCell))