Excel 避免偏移命名范围的索引

Excel 避免偏移命名范围的索引

我有几行包含 Excel 中的数据,例如 a、b、c、d 和 e

我可以创建一个命名范围,例如Letters。稍后我想在我的工作表中访问这些值并重新创建整个表。但是它只采用对齐的值,而不是从头开始。解释

实际内容如下:

+-+-+-------------------+
|a| |                   |
+-+-+-------------------+
|b| |                   |
+-+-+-------------------+
|c| |=INDEX(Letters,0,1)|
+-+-+-------------------+
|d| |=INDEX(Letters,1,1)|
+-+-+-------------------+
|e| |=INDEX(Letters,2,1)|
+-+-+-------------------+

我想要的是:

+-+-+----+
|a| |    |
+-+-+----+
|b| |    |
+-+-+----+
|c| |  a |
+-+-+----+
|d| |  b |
+-+-+----+
|e| |  c |
+-+-+----+

我得到的是:

+-+-+----+
|a| |    |
+-+-+----+
|b| |    |
+-+-+----+
|c| |  c |
+-+-+----+
|d| |  d |
+-+-+----+
|e| |  e |
+-+-+----+

答案1

报告结果和第二条评论唯一有意义的方式是,如果不是第一个表中报告的公式,这将产生与报告结果完全不同的东西,Vinz243实际上根本没有使用该INDEX()函数,只是=Letters

这将给出由于隐式交集而产生的报告结果,这在 2016 年非常存在,但由于发生了变化,现在已不存在SPILL ARRAYS

因此,这一定是正在做的事情。

因此,为了解决这个问题,应该使用以下公式:

=INDEX(Letters,1,1)
=INDEX(Letters,2,1)
=INDEX(Letters,3,1)

这将得到“a”,然后是“b”,然后是“c”。

一个不可能被利用的漏洞INDEX()是,如果被利用了,返回的三个值应该是“a”,然后是“a”,最后是“b”。现在(2021 年),显示的第一个公式会尝试使用SPILL中的所有条目Letters,但如果正常输入,则只会给出“最左上角”的元素“a”,如果输入,{CSE}其结果将与在单个单元格中输入的结果相同,而不是在范围内。以下两个将按预期工作。第一个的问题可能是行参数的“0”,指示INDEX()返回 的所有元素Letters

奇怪的是,发帖者展示了INDEX()公式,但显然没有使用它们。同样奇怪的是,他不愿提及这一事实。但主要是他知道该用什么,即使他的替代想法失败了,他也没有简单地做他知道会起作用的事情。然后问为什么他的替代想法没有起作用,而不是为什么整个阴暗的事情没有起作用。啊,不是每个人都真的想要一个有用的答案。

相关内容