计算包含在文本字段中的值

我在我的数据集中有一个描述字段,其中包含产品名称列表,并且在每个名称后面都有一个存储在方括号内的数量值。

例如
产品一[2]
产品二[1]

我正在从方括号内提取数字并将它们加在一起。

我可以通过使用MID / FIND公式find第一个值,但不知道如何查找和计算多个数量?

由于某些logging中包含大量的产品,我无法分割我的数据。

在此先感谢您的帮助。

可能有一个更清洁的方法,但这将工作(假设你正在看一个单元格):

 Public Function SumBrackets(rngSource As Range) Dim strData As String Dim dblSum As Double Dim lngBracketStart As Long Dim lngBracketEnd As Long strData = rngSource.Value Do While InStr(1, strData, "[") <> 0 lngBracketStart = InStr(1, strData, "[") lngBracketEnd = InStr(1, strData, "]") dblSum = dblSum + Mid(strData, lngBracketStart + 1, lngBracketEnd - lngBracketStart - 1) strData = Mid(strData, lngBracketEnd + 1, Len(strData) - lngBracketEnd) Loop SumBrackets = dblSum End Function