数组 UDF 不断重复单个值

Posted

技术标签:

【中文标题】数组 UDF 不断重复单个值【英文标题】:Array UDF keeps repeating single value 【发布时间】:2016-11-08 19:13:35 【问题描述】:

我使用数组 UDF 从符合多个标准的大型数据文件中选择元素。当我有多个符合条件的元素但只有一个符合条件的元素时,该公式可以正常工作。元素不断重复。

示例输出多个符合条件的元素:

A  
B  
C  
N/A  
N/A  

示例输出 1 符合条件的元素:

A  
A  
A  
A  
A  

我在我的 UDF 中传递的输出数组只包含 1 个元素,所以这似乎是一个与数组函数相关的问题。例如,我可以在 1 个单元格上使用 TRANSPOSE 函数重新创建行为。

Transpose example

有人知道避免这种行为的方法吗?

【问题讨论】:

不看代码很难知道 - kindly post the code. 帮助我们帮助您。 发布您当前的代码。 请参阅***.com/a/40451062/6535336 - 如果您将多个值复制到更大的范围,但精确倍数更大,则这些值会重复 - 因此将两个值复制到 8 个单元格将导致这两个值要重复 4 次,将一个值复制到一整列将导致一个值重复 1048576 次,但是将 7 个值复制到 24 个单元格将导致值仅插入一次(因为 7 不是 24 的因数) .那么,你的目标范围有多大? 【参考方案1】:

如果您在数组公式上下文中使用 UDF,那么您可以通过查看来确保输出数组的大小正确

Application.Caller

在 UDF 内部。

这表示您输入数组公式的范围。使用此范围的尺寸来调整输出数组的大小,以避免您在问题中注意到的问题。

【讨论】:

以上是关于数组 UDF 不断重复单个值的主要内容,如果未能解决你的问题,请参考以下文章

UDF数组导致#Value [重复]

Bigquery UDF 重复查询。错误:标量子查询不能超过一列

输出在数组中不断重复

使用列名数组中的 UDF 将列合并到单个映射中

将参数传递给 Scala udf [重复]

UICollectionView 的标题视图在滚动时不断重复 - 如何创建固定(非粘性)的单个集合视图标题?