是否可以创建输入(known_y
a known_x
)TREND
当单元格不在单一范围内时,函数是什么?
例子:
我想检查中间值(B3)与TREND
结果是否一致(不重新排列表格)
+---+----+----+
| | A | B |
+---+----+----+
| 1 | X | Y |
| 2 | 0 | 0 |
| 3 | 5 | 5 |
| 4 | 10 | 10 |
+---+----+----+
意思known_y
是{B2;B4}, known_x
{A2;A4}。
所以我尝试为TREND
输入数组创建矩阵:=TREND({B2;B4},{A2;A4};A5)
但这不被识别为正确的函数。似乎手动创建的矩阵中不允许引用(简单={A1;A2}
也不行)。
TREND
是否有一些技巧可以在不创建输入数据在一个范围内的新表的情况下实现所需的行为?
原始问题到此结束
添加于 2020-04-24 12:48
嵌套矩阵公式解决方案不起作用(尝试)
我还尝试了变通方法,从非相邻单元格创建“范围”。为清楚起见,这里使用了命名范围(列)(列标题 = 范围名称)。
Given data
+----+----+ +-----+ +-----+
| x | y | | seq | | mask|
+----+----+ +-----+ +-----+
| 0 | 0 | | 1 | | 3 |
| 5 | 5 | | 2 | | 1 |
| 10 | 10 | | 3 | +-----+
| 15 | 15 | | 4 |
| 20 | 20 | | 5 |
+----+----+ +-----+
然后使用矩阵公式创建“已知”数组:
+---------+---------+ |
| known_x | known_y | | known_x {=INDEX(x,MATCH(mask,seq,0))}
+---------+---------+ | known_Y {=INDEX(y,MATCH(mask,seq,0))}
| 10 | 10 | |
| 0 | 0 | |
+---------+---------+ |
最后将它们放入TREND
函数中。=TREND(known_y,known_x,5)
但它返回10
- 因为known_y
,known_x
不被视为矩阵 - 只有第一个单元格被纳入计算。
还尝试过:
{=TREND(INDEX(y,MATCH(mask,seq,0)),INDEX(x,MATCH(mask,seq,0)),5)}
但行为相同(结果 = 10
)。
谢谢您的建议并且抱歉我的英语不好。
公式翻译成英文使用Excel 翻译。