Excel验证下拉列表 - 根据类别填充相关值

时间:2018-05-24 20:48:46

标签: excel

所以我有两个类别 - 让我们称之为'汽车'和'Vans'。工作簿中的第一个工作表具有左侧单元格中具有类别名称的车辆列表:

CATEGORY    VEHICLE ID
Car         12987
Van         28374
Van         34872
Car         38747
Car         48726

我想在工作簿的其他位置使用该列表来填充验证下拉列表。有没有办法传递类别名称(即Vans或Cars),在左栏中搜索与该值匹配的单元格,然后在哪些匹配项中使用相邻ID列的值填充下拉列表?

1 个答案:

答案 0 :(得分:0)

数据验证只接受范围,而不是数组,并且范围必须是连续的,因此您必须使用辅助范围或按CATEGORY排序。要复制图像中显示的结果,请按照以下步骤操作。

enter image description here enter image description here

  1. C2中输入此数组公式( ctrl + shift + 输入)并填写:
  2. =IF(COUNTIF($C$1:C1,C1)<COUNTIF($A$2:$A$6,C1),C1,INDEX($A$2:$A$6,MATCH(0,COUNTIF($C$1:C1,$A$2:$A$6),0)))

    1. D2中输入(再次作为数组公式)并填写:=INDIRECT("B"&SMALL(IF($A$2:$A$6=C2,ROW($A$2:$A$6)),COUNTIF($C$1:C2,C2)))

    2. G2中输入此数据验证列表公式,然后将G2填入G3=INDIRECT("D"&MATCH(F2,$C$2:$C$6,0)+ROW($A$1)&":D"&MATCH(F2,$C$2:$C$6,0)+COUNTIF($A$2:$A$6,F2)+ROW($A$1)-1)