1

我想将单元格引用传递给 Excel 中的 STDEV.P 函数,但是当我这样做时,我不断收到 #DIV/0 错误。

我在 Excel 中有两列。A 列包含从 2012 年 1 月 1 日到当前日期的日期列表。B 列包含一个整数列表。我有超过 800 行数据,并且 B 列中的整数可能在 800 行数据中的某处重复。

我想在 B 列中找到一个值数组的 STDEV。该数组由开始日期和结束日期确定。最终用户可以决定使用哪个开始日期和结束日期。例如,如果开始日期是 2015 年 1 月 1 日,我想在 B 列中找到该日期对应的整数,并将CELL REFERENCE传递给 STDEV 公式。我想为结束日期做同样的事情。最终结果是一个 STDEV 计算,它使用由用户提供的开始和结束日期确定的整数数组。

我已经能够使用 MATCH、INDEX 和 ADDRESS 函数找到单元格位置(例如,值 .332 在单元格 D45 中),但是当我尝试将 D45 传递给 STDEV 函数时,我得到了错误。帮助!

4

2 回答 2

1

许多用户认为一INDEX(MATCH(...))对只在查找中返回一个单元格值,但实际上它可以用于返回一个单元格引用,而无需INDIRECT 函数的开销。其中两个甚至可以用冒号连接,形成一个有效的单元格范围,用于任意数量的公式。

        具有 INDEX/MATCH 范围的 STDEV

F2:H2 中的公式是,

=STDEV(INDEX(B:B, MATCH(D2,A:A, 0)):INDEX(B:B, MATCH(E2,A:A, 0)))    ◄F2
=STDEV.P(INDEX(B:B, MATCH(D2,A:A, 0)):INDEX(B:B, MATCH(E2,A:A, 0)))  ◄G2
=SUM(INDEX(B:B, MATCH(D2,A:A, 0)):INDEX(B:B, MATCH(E2,A:A, 0)))      ◄H2

我包含了一个简单的SUM 函数,这样您就可以快速验证所使用的方法是否返回了正确的单元格范围,而无需在 StDev 上进行数学运算。

在许多查找函数中,这是一个INDEX 函数特征。VLOOKUP 函数HLOOKUP 函数不能以这种方式使用,因为它们只返回值。

于 2015-04-16T04:12:38.423 回答
0

假设您的开始日期在 D1,结束日期在 D2,请尝试:

=STDEV.P(INDIRECT("B"&MATCH(D1,A:A,0)&":B"&MATCH(D2,A:A,0)))  

只要日期是唯一的,其他值是否不是都无关紧要。

于 2015-04-16T03:55:56.633 回答