在 Excel 2019 中按公式对带分隔符的数字求和

Sum Numbers With Delimiter By Formula in Excel 2019

我有一个文本为 0.4-2-10-0.5 的单元格。如何使用 VBA 创建公式或函数来对单元格中的每个元素求和 0.4+2+10+0.5 =12.9 ? 我尝试了 https://www.extendoffice.com/documents/excel/3959-excel-sum-numbers-with-commas.html 中的公式。然而,我的这个案例是错误的。 谢谢

这对我来说似乎很好用。保持距离,您的语言环境可能会以不同方式解释圆点:

Sub test()
Dim s As String
s = "0.4-2-10-0.5"
a = Split(s, "-")
Dim sum As Double
sum = 0
For Each t In a
  sum = sum + CDbl(t)
Next t
End Sub

公式解为: =SUM(FILTERXML("<y><z>"&SUBSTITUTE(A1,"-","</z><z>")&"</z></y>","//z")) 其中 A1 将包含给定的文本。 旁注:此公式 FILTERXML 仅适用于 Windows 系统。

由于您已标记 Excel 2010,P.b 的 FILTERXML 设置将不适合您。尝试:

=SUMPRODUCT(0+TRIM(MID(SUBSTITUTE(A1,"-",REPT(" ",25)),1+25*(ROW(INDEX(A:A,1):INDEX(A:A,1+LEN(A1)-LEN(SUBSTITUTE(A1,"-",""))))-1),25)))