在列表框中添加带小数的数字

时间:2014-04-23 04:39:25

标签: vba excel-vba listbox excel

在我的列表框中,存储十进制数量,总数存储在文本框

但问题是我带走的数量是“,”

所以通过添加我的列表框,没有考虑到“,”的左侧值

是什么让我成为一个例子 12,3 + 6,7 + 2,1 = 21

以及我想做什么 12,3 + 6,7 +2,1 = 21,1

我已使用此代码

   Dim Total As Double 

   For x = 0 To lstIva.ListCount - 1 

   total = total + Val (lstIva.List (x)) 

   Next 

   txtTotal = total

1 个答案:

答案 0 :(得分:1)

似乎VBA类型转换不会将.以外的任何内容识别为小数分隔符。

解决此问题的一种方法是将,替换为.,执行总和,然后替换回,

另外,如果有.个分隔符,请将其删除。

Dim Total As Double
Dim x As Long
For x = 0 To lstIva.ListCount - 1
    Total = Total + (Replace$(Replace$(lstIva.List(x), ".", ""), ",", "."))
Next

txttotal = Replace$(Total, ".", ",")