首页 > Excel专区 > Excel函数 >

excel数组公式创建无重复项的数据有效性下拉列表

Excel函数 2023-01-13

有时需要以一列数据为来源制作数据有效性下拉列表,但当该列数据包含重复值时,下拉列表中也会包含这些重复的项目,如下图中A列包含一些水果名称,在C3单元格中直接用数据有效性创建的下拉列表就包含了多个重复项,显得不够简洁。

要在数据有效性下拉列表中仅显示这列数据中的唯一值,可以先将该列数据中的唯一值提取到辅助列中,再创建下拉列表,具体方法如下:

1.用数组公式提取唯一值。

从一列数据中获取唯一值的公式有很多,如下面的数组公式。假如数据在A2:A21区域,以B列为辅助列,在B2单元格输入:

=INDEX($A$2:$A$21,MATCH(0,COUNTIF($B$1:B1,$A$2:$A$21),0))

公式输入完毕后按Ctrl+Shift+Enter结束,然后拖动填充柄向下填充公式,直到出现“#N/A“为止,这样就将A列中的唯一值提取到B列。

2.定义名称。

由于B列中还包含错误值“#N/A“,用下面的数组公式可动态引用B列中不包含错误值的区域B2:B9:

=OFFSET($B$2,,,MATCH(TRUE,ISERROR($B$2:$B$21),0)-1,1)

但如果直接将该公式用于数据有效性,会出现重新打开工作簿后无法打开下拉列表的问题,因而需将其定义为一个名称后再应用于数据有效性。

Excel 2003:单击菜单“插入→名称→定义”,弹出“定义名称”对话框,在“在当前工作簿中的名称”下的文本框中输入一个名称,如“weiyizhi”,在“引用位置”下输入上述公式,单击“确定”。

Excel 2007/2010:在“公式”选项卡的“定义的名称”组中单击“名称管理器”,分别输入一个名称和上述公式,如图:

单击“确定”,关闭“名称管理器”。

3.设置数据有效性。

假如需要在C3单元格中设置数据有效性下拉列表,选择C3单元格:

Excel 2003:单击菜单“数据→有效性”;

Excel 2007/2010:在“数据”选项卡的“数据工具”组中单击“数据有效性→数据有效性”;

在弹出的“数据有效性”对话框中选择“设置”选项卡,在“允许”下选“序列”,在“来源”下的文本框中输入公式:

=weiyizhi

单击“确定”。这样C3单元格中的数据有效性下拉列表就只显示A列中的唯一值。


Copyright © 2016-2023 office学习教程网 office.tqzw.net.cn. All Rights Reserved.