Excel中的多级依赖下拉列表

时间:2018-12-30 20:34:11

标签: excel

我正在尝试使用Excel创建一个多级依赖列表。我有三列CODE,STATE和CITY。示例数据如下。

enter image description here

数据具有18k CODE。

截至目前,在我执行的步骤下面。

  1. 我已经使用G5单元格中的验证功能创建了一个CODE列表。

  2. 我已选择CODE列范围并创建了名称管理器“代码”。

  3. 在下一个单元格中,我创建了一个列表,并在源代码中添加了公式=OFFSET($B$2,MATCH(G5,Codes,0)-1,,COUNTIF(Codes,G5))。通过这种方式,我得到状态取决于CODE。

  4. 我为状态列创建了名称管理器

  5. 现在,要获取城市信息,在下一列中,我创建了一个列表,并在源代码中添加了公式=OFFSET($C$1,MATCH(1,(F2=CODE)*(G2=STATE),0),0,COUNTIF(G2,STATE))

它没有给我预期的结果。

我希望根据代码和状态填充相应的CITY列表。

请求您的帮助。

1 个答案:

答案 0 :(得分:0)

我使用两个数组公式解决了您的问题:

在单元格H5中(并向下复制):

  

{= IFERROR(INDEX(State,MATCH(0,IF($ G $ 5 = Codes,COUNTIF($ H $ 4:$ H4,State),“”),0)),“”)}

在单元格I5中(并向下复制):

  

{= IFERROR(INDEX(CITY,MATCH(0,COUNTIF($ J $ 4:J4,City)++ State <> $ I $ 5)+(Codes <> $ G $ 5),0)),“” )}

其中:

  • Codesrange(A2:A12)
  • Staterange(B2:B12)
  • Cityrange(C2:C12)
  • G5是城市条件的单元格
  • I5是状态条件的单元格

enter image description here

enter image description here

数组公式,必须使用 Ctrl Shift Enter 输入。您不能手动输入{...}括号。