在Excel中通过string创build函数

我试图find一个更简单的方法来计算以下统计:平均值,标准差,最小值和最大值。 到目前为止,我已经尝试将函数名称(E9),起始列($ E $ 6),开始行($ F $ 2),结束列($ G $ 6)和结束行($ F $ 3)组合起来。 结果是AVERAGE(A2:C10) 。 我想这个返回值是AVERAGE(A2:C10) ,这是6.23 。 有没有办法把它变成Excel可以识别的等式? 这个概念将用于查找大数据集的平均值,标准差,最小值和最大值。 提前致谢!

在这里输入图像说明

经过一番思考之后,你可以build立一个交叉引用表,在使用INDIRECT提供范围的同时提供SUBTOTAL公式的function。

 Function Function_Num Function_Num (excludes hidden values) Average 1 101 Min 5 105 StDev 7 107 

SUBTOTALfunction的可用function的完整列表可以在这里find 。 在X1:Z4中的表格中,

=小计(vlookup(E9,X:Z,2,false),间接(e6&f3&“:”&g6&f3))

请注意,并非每个本机工作表函数在SUBTOTAL中都可用,但您指定的三个函数以及其他几个函数都是可用的。

附录:

  1. 数据validation列表可以使用E9:G9的Source:列表作为X2:X4或定义为='Sheet1'!$X$2:INDEX('Sheet1'!$X:$X, MATCH("zzz", 'Sheet1'!$X:$X))的命名范围='Sheet1'!$X$2:INDEX('Sheet1'!$X:$X, MATCH("zzz", 'Sheet1'!$X:$X))进行“最后字母”查找。
  2. 数据查找范围本身可以被定义为dynamic命名范围,其中Source =Sheet1!$X$2:INDEX(Sheet1!$Z:$Z, MATCH(1E+99, Sheet1!$Z:$Z)) of =Sheet1!$X$2:INDEX(Sheet1!$Z:$Z, MATCH(1E+99, Sheet1!$Z:$Z))为'最后的数字'查找。
  3. 数据►sorting和filter►过滤命令在<隐藏>行上<100和> 100的function_num标识符都是相同的。
  4. 对于Excel 2010及更高版本, AGGREGATE函数可能会提供其他function。

如果你想漫游到无证“function”的世界,你可以使用EVALUATE函数,如果它在一个命名的范围内定义。 它主要在Excel 2013中工作,如下所示: http : //www.vertex42.com/ExcelArticles/evaluate-function.html 。

缺点是它看起来不会更新,除非更新基础公式或结果单元格。 它不能正确响应AVERAGE / SUM中数据的变化。 这可能不是一个问题,如果你经常改变公式(或间接使用它,因为我相信间接力量完全recalcs)。

评估行动