删除Excel数据验证列表中的空白值时出现问题?

时间:2015-05-06 10:53:12

标签: excel excel-formula

我正在尝试从数据验证下拉列表中删除空白值。为此,我动态地将源列(例如,Column1)中的所有非空值填充到另一列(例如column2),最后我在数据验证列表中引用此动态列。下面是我使用它删除空白并填充动态列的公式:

=IFERROR(INDEX([Column1],SMALL((IF(LEN([Column1]),ROW(INDIRECT("1:"&ROWS([Column1]))))),ROW([@Column1]))),"")

这里的问题是来自column1的前三个值没有填充到column2中。我观察到ROW([@Column1]总是返回与sheet对应的行的索引。我需要与表对应的行的索引而不是表单?

有人可以帮忙。我有点坚持如何实现这个目标?

Excel screen shot

1 个答案:

答案 0 :(得分:1)

[@ Column1]中的@符号表示"当前行"。

代替ROW([@Column1]尝试row(A1)。这将返回值1,当向下复制时将调整为2,3,4等

完整的公式是

= IFERROR(INDEX([列1],SMALL((IF(LEN([列1]),ROW(INDIRECT(" 1:"&安培; ROWS([列1]))))) ,ROW(A1)))"&#34)

这是一个数组公式,必须使用 Ctrl -Shift-Enter

确认

以下是结果的屏幕截图

enter image description here