你能重现这个奇怪的#SPILL吗! ?你能解释一下吗?
在单元格 B3
中,我放置了这个 RANDARRAY :
=RANDARRAY(3,5,1,20,1)
来测试一个小 LET 以在数组中生成唯一值:
=LET( array,B3#,
aCols, COLUMNS( array ),
eSeq, SEQUENCE( ROWS( array ) * aCols,, 0 ),
UNIQUE( INDEX( array, eSeq/aCols + 1, MOD( eSeq, aCols ) + 1 ) ) )
我将其放入 H3
中。
计算时,它会从数组中溢出一个唯一值列表(而 UNIQUE 会按行或按列生成)。
一切都很好,但我注意到当我计算(F9)时,它偶尔会返回#SPILL!。 (并且下面的行中没有任何内容会强制#SPILL!(
因此,当它执行此操作时,我被困住了,并将值复制到新范围并运行 。
然后我将公式 =B3
放入 J3
中,并将其复制到一个新的单元格数组中 查看 B3# 数组中的每个单元格,并复制了我的让公式并将其放入 P3
中,并将 array 设置为 J3:N5
然后我按 F9 直到 #SPILL 再次发生
。频繁 - 大约 15% 的时间
,#SPILL! 发生在两个阵列(B3# 和 J3:N5)上,但偶尔它只发生在两个副本之一上:
发生在 J3:N5
发生在 B3#
大多数时候,两者都会发生:
任何想法为什么?
任何人都可以复制这个吗?
问题的根源,但没有解释
Pb 在评论中提出了这个(更好的)公式。它揭示了问题的根源来自于 UNIQUE 与随机输入的结合。所以我现在尝试了 =UNIQUE(RANDARRAY(15,1,1,20,1))
并发现它有#SPILL!问题。
同样有趣的是,这个公式可以放置在多个单元格中,并且所有单元格都倾向于#SPILL!即使他们有独立的输入,也是同时进行的。这些会导致#SPILL!如果工作簿中有多个内容,则大约 95% 的情况下。
这里我有十几个,只有一个成功了,那是在按 F9 大约 10 次之后。
In cell B3
I put this RANDARRAY :
=RANDARRAY(3,5,1,20,1)
to test a small LET to generate UNIQUE values across an array:
=LET( array,B3#,
aCols, COLUMNS( array ),
eSeq, SEQUENCE( ROWS( array ) * aCols,, 0 ),
UNIQUE( INDEX( array, eSeq/aCols + 1, MOD( eSeq, aCols ) + 1 ) ) )
that I put in H3
.
When it calcs, it spills a list of unique values from the array (whereas UNIQUE generates an either row-wise or column-wise).
All good, but I notice that when I calc (F9), it occasionally returns #SPILL!. (and there was nothing in the rows underneath that would force a #SPILL!(
So, I trapped when it does this and copied the values to a new range and ran the formula on just those values. The #SPILL! does not happen.
Then I put the formula =B3
into J3
and copied it across to make a new array of cells that simply looks at each cell in the B3# array and I made a copy of my LET formula and placed it in P3
with array set to J3:N5
. Then I hit F9 until the #SPILL! recurred.
It happens quite frequently - about 15% of the time.
Usually, the #SPILL! happens on both arrays (B3# and J3:N5), but every so often it happens to only one of the two copies:
Happens to J3:N5
Happens to B3#
Most of the time, it happens to both:
Any idea why?
Can anyone reproduce this?
Source of the problem, but no explanation
P.b. proposed in the comments this (much better) formula. It exposed that the root of the problem comes from UNIQUE in combination with a Random input. So I have now tried =UNIQUE(RANDARRAY(15,1,1,20,1))
and found that it has the #SPILL! problem.
What is also interesting is that this formula can be placed in multiple cells and all of them tend to #SPILL! simultaneously even though they would have independent inputs. These result in #SPILL! about 95% of the time if more than one is in a workbook.
Here I have a dozen of them - only one succeeded and that was after hitting F9 about 10 times.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论