【发布时间】:2012-12-07 21:01:36
【问题描述】:
考虑具有以下值的 Excel 工作表:
A B
--------
1| 1 5
2| 2 8
3| 3 11
在单元格 C1:C3 中输入数组公式 =TREND(B1:B3,A1:A3,A1:A3) 会返回 {5;8;11},正如预期的那样。输入=OFFSET(C1:C3,1,0) 返回{8;11;0},也符合预期。
但是,如果我尝试输入 =ROWS(OFFSET(TREND(B1:B3,A1:A3,A1:A3),1,0)),我会收到消息“您输入的公式包含错误”。我不能做任何事情让它接受公式。
接下来,我分别使用公式 =Sheet1!$C$1:$C$3 和 =TREND(Sheet1!$B$1:$B$3,Sheet1!$A$1:$A$3,Sheet1!$A$1:$A$3) 创建了命名范围“TrendRange”和“TrendFormula”。
同样,=OFFSET(TrendRange,1,0) 给出了正确的结果,但 =OFFSET(TrendFormula,1,0) 没有(它导致 #VALUE!)。
有一个简单的测试似乎总能确定 OFFSET 何时会出现此问题。如果=CELL("address", xxx) 或=AREAS(xxx) 的结果是#VALUE!,那么在OFFSET 中不能使用xxx 部分。
有没有办法解决这个问题?我尝试使用 LINEST 和 SLOPE/INTERCEPT 而不是 TREND,但我得到了相同的结果。
【问题讨论】:
标签: excel excel-formula offset named-ranges trend