是否有查找交易数量的功能?

Is there a function to find number of transactions?

我有 Google 个表格,其中我根据类别总结了我的支出。

例如“在线购物”- =100+52+35+841

我们可以同意这个公式中有 4 个项。这表示我已经进行了 4 次交易。

示例 2 =18+45+124+1045-16

我得到了 16 个回报(也许我做了一个部分-return 或者得到了报酬) 这次是5terms/transactions.

使用 LEN + SUBSTITUTE 函数 Google 可以“计算”该单元格中整数的数量。

在前。 2 return 13. (1,8,4,5...)

我想数暑假的每个学期。所以 return 是 5 for ex。 2 和 4 例如 1.

如果可能的话,应该可以用十进制表示来计算数字的数量。 IE。 =25,45+109,05-34,5 应该产生 3 个交易。

另外 =12 应该会产生 1 笔交易。

如果唯一的交易是 +-,它只是这些符号的计数加一。

假设您的原始字符串在 A2:A 中。将以下内容放在空的 B2:B 的 B2 中(或任何其他空列的第 2 行单元格中):

=ArrayFormula(IF(A2:A="",,LEN(REGEXREPLACE(A2:A,"[^+-]",""))+1))

这个公式将处理 A2:A.

范围内的所有条目

如果您只想处理一个单元格而不是连续的范围,您可以使用此公式,将 A2 替换为您的单个单元格引用:

=LEN(REGEXREPLACE(A2,"[^+-]",""))+1

任何一个公式都只是使用 REGEX 替换每个字符 除了 +- 然后返回剩余的 LENgth字符串加一。

尝试:

=INDEX(IFERROR(1/(1/LEN(REGEXREPLACE(A1:A, "[0-9\.,=]", )))+1))


更新 1:

=IFERROR(1/(1/LEN(REGEXREPLACE(FORMULATEXT(A15), "["" a-z0-9\.,=]", )))+1)

更新 2:

=IF(A1="",,LEN(REGEXREPLACE(FORMULATEXT(A1), "["" 0-9\.,=]", ))+1)

我根据@player0 的回答、帮助和评论找到了自定义解决方案!

=IFERROR(1/(1/(1+LEN(REGEXREPLACE(FORMULATEXT(A1), "["" 0-9\.,=]", )))))

需要1+LEN()(而不是1/(1/LEN())+1)来解决我只有一个值的问题。即 =25 到 return 1 而不是什么都没有。