当单元格不在单个范围内时,是否有可能为函数创建输入(known_y
a known_x
) ?TREND
例子:
我想根据TREND
结果检查中间值(B3)(不重新排列表格)
+---+----+----+
| | 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 翻译器将公式翻译成英文。
用这个:
根据版本的不同,退出编辑模式时可能需要使用 Ctrl-Shift-Enter 而不是 Enter 来确认。
{2,4}
所需的行在哪里。可以添加其他的。