从数组中的多个字符串中提取数字,然后求和-Excel

时间:2018-10-10 06:57:28

标签: excel excel-formula

我有一个数组,如以下屏幕截图所示: enter image description here 它是根据列中位于其上方的数据堆栈动态创建的。 我想做的是使用辅助单元格处理您在单元格中看到的总数。有可能吗?

例如,我想找到平均行数,或者我想找到平均重量或体积(cft =立方英尺)。

我可以很容易地找到一种使用辅助单元格做到这一点的方法,但是我可以使用一个公式来解析数据,然后将其全部编译到一个单元格中吗?

如果答案为“否”,我将接受它作为可行的答案,并在没有其他答案的情况下将其标记为可行。

4 个答案:

答案 0 :(得分:2)

您可以使用像这样的数组公式并将其向下拖动。

使用“评估公式”选项可以逐步查看它的工作方式,或者可以选择公式的一部分,然后按F9键以查看所选部分的结果。

  

= AVERAGE(IFERROR(VALUE(LEFT(B31:K31,SEARCH(“”,B31:K31)-1)),B31:K31))

enter image description here

答案 1 :(得分:1)

对于行,假设您有带有数字的文本“行”,则可以使用:

=left(A1,find(" ",A1,1)-1)

对于每个单元格,然后从那里进行计算...假设数据从单元格A1开始...

有时这4个结果未被识别为数字,所以:

=left(A1,find(" ",A1,1)-1)*1

可以改变它。.

答案 2 :(得分:1)

以@Solar Mike的响应为基础,我发现我可以在LEFT函数中嵌入一个数组,并且如果将公式作为数组公式输入,就可以完成这项工作。

适用于此的解决方案:=SUM(LEFT(B31:L31,FIND(" ",B31:L31,1)-1)*1)

需要使用 Ctrl + Shift + Enter 作为数组公式输入,这就是放置“花括号”的原因围绕公式,您就知道自己做得正确{}

谢谢@Solar Mike,我今天学到了新东西!

答案 3 :(得分:1)

我建议您应用自定义格式,而不是在单元格中构建文本字符串作为答案,然后不必使用复杂的数组公式来删除添加的文本,

例如#,## 0“行”

然后,您可以只使用标准的AVERAGE等公式。