在命名范围

时间:2016-06-14 04:58:32

标签: excel-formula

所以this question有很多方法可以在电子表格中生成唯一条目列表。我使用this reference为其他问题生成了许多唯一的列表解决方案。

这些解决方案依赖行号来从原始列表中选择项目第一次出现的位置。至少这是我的理解。我的问题是可以将唯一条目列表直接放入已定义的名称而不实际显示列表吗?

示例数据

Species 
combination         | Grade
Douglas fir-Larch   | SS
Douglas fir-Larch   | No. 1
Douglas fir-Larch   | No. 2
Hem-Fir             | SS
Hem-Fir             | No. 1
Hem-Fir             | No. 2
Spruce-Pine-Fir     | SS
Spruce-Pine-Fir     | No. 1
Spruce-Pine-Fir     | No. 2
Northern species    | SS
Northern species    | No. 1
Northern species    | No. 2

现在,我想在定义的名称Species中生成一个唯一列表,并定义名称Grade。我的想法是,我可以将定义的名称用于数据验证下拉列表或公式:

=INDEX(Species,3)
or
=INDEX(Grade,2)

Data Validation

我会得到一个结果:

Spruce-Pine-Fir
or
No. 1
  • 我试图在不使用VBA或Helper单元的情况下实现这一目标。
  • 物种清单可以分类,如果它让生活更轻松。成绩列表应按上面显示的顺序排列。
  • 源列表(即上表)将在一个单独的工作表上(不是工作簿......仍然在玩弄这个想法)。

我正在使用的公式,但不会作为定义的名称公式。

=INDEX($A$6:$A$17,MATCH(0,INDEX(COUNTIF($B$1:B1,$A$6:$A$17),0,0),0))

Define Name

1 个答案:

答案 0 :(得分:1)

1)我将指出,对于数据验证列表,Excell会自动限制为唯一值,因此您可以参考Species的整个列/范围

2)您可以使用MOREFUNC ADDON中的UNIQUEVALUES() function来实现您的需求(见下文)

MOREFUNC ADDON

  • Morefunc Addon是一个包含66个额外Excel工作表函数的免费库。
  • HERE是一些信息(原作者;网站已被删除/放弃,因此WaybackMachine版本)
  • 这是我找到的最后一个download link
  • 这是一个很好的installation walk-through video