【问题标题】:Data validation - Drop down list with no duplicates in excel数据验证 - 在 Excel 中没有重复的下拉列表
【发布时间】:2016-08-15 03:38:50
【问题描述】:

您能否帮助我删除下拉列表中的重复项。该列表不是静态的。示例:

之前

James
Peter
James
Nick
Peter

之后

James
Peter
Nick

我不确定要使用什么公式数据验证公式框。

我尝试了以下方法,但没有成功:

=OFFSET($C$13,0,0,COUNTIF(C:C,"?*")-1)

【问题讨论】:

  • 您是否已经尝试过类似this 的方法来删除重复项?

标签: excel validation excel-formula vba


【解决方案1】:

第 1 步 - 使用 A 列中的原始名称,将此数组公式¹ 放在第二行右侧的某个位置。我会用 Z2。

=IFERROR(INDEX(A$2:INDEX(A:A, MATCH("zzz",A:A )), MATCH(0, COUNTIF(Z$1:Z1, A$2:INDEX(A:A, MATCH("zzz",A:A ))&""), 0)), "")

向下填写,直到用完名称,然后再填写几行以供将来扩展。

第 2 步 - 转到公式 ► 定义的名称 ► 名称管理器并创建一个新名称。

Name: listNames
Scope: Workbook
Refers to: =Sheet2!$Z$2:INDEX(Sheet2!$Z:$Z, MATCH("zzz", IF(LEN(Sheet2!X:X), Sheet2!$Z1:$Z98) ))

第 3 步 - 转到您希望进行数据验证的单元格并使用数据 ► 数据工具 ► 数据验证。

Allow: List
Source: listNames

        


¹ 数组公式需要使用 Ctrl+Shift+Enter↵ 完成。如果输入正确,Excel 会将公式用大括号括起来(例如 {})。您不会自己输入大括号。一旦正确输入第一个单元格,它们就可以像任何其他公式一样被填充或向下或向右复制。尝试将全列引用减少到更接近代表实际数据范围的范围。数组公式以对数方式消耗计算周期,因此最好将引用范围缩小到最小值。更多信息请参见Guidelines and examples of array formulas

【讨论】:

  • 效果非常好。我将在远端向用户隐藏该列。谢谢。
猜你喜欢
  • 2017-03-12
  • 2012-06-29
  • 1970-01-01
  • 2016-10-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-03-25
相关资源
最近更新 更多