代码之家  ›  专栏  ›  技术社区  ›  Pawel

带有数组公式的Excel数据验证列表

  •  0
  • Pawel  · 技术社区  · 5 年前

    我有一个表,在一列中有重复的值。如何使用此列在另一个单元格中提供唯一值作为下拉选项?我希望能够在我的表中输入新行,这些行可能包括已经存在的或新的值,并且下拉列表应该自动反映这一点。

    我使用UNIQUE(MyTable[MyColumn])尝试的内容:

    • Excel不接受此公式作为数据验证源
    • 我可以将UNIQUE(MyTable[MyColumn])溢出到范围并命名此范围,并将其用作数据验证源,但当我的表数据更改时,命名的范围不会自动扩展/收缩
    • Excel将不接受新表中的UNIQUE(MyTable[MyColumn])
    1 回复  |  直到 5 年前
        1
  •  0
  •   Ike    5 年前

    你走在正确的道路上——是的:这很烦人,而且绝对不是直觉。

    命名范围时,必须在引用后添加一个#:

    enter image description here

    然后使用验证列表的名称。现在,当您向表中添加新行时,它将展开。

    D3:引用表列的UNIQUE公式 名称“lstValues”:引用$D$3# 然后使用lstValues

        2
  •  0
  •   Pawel    5 年前

    替代解决方案

    • 插入引用原始表作为源的Power Query: = Excel.CurrentWorkbook(){[Name="MyTable"]}[Content]
    • 人民币 在要保持的列上, 删除其他列 (如有)
    • 人民币 在列上, 删除重复项
    • 关闭并加载 作为表、名称表添加到图纸 DropdownTable
    • 定义新的命名范围 DropdownValues 参考 =DropdownTable 或 =DropdownTable[#All] 包括标题)
    • 使用 =DropdownValues 作为数据验证源