簡體   English   中英

Excel中的分層動態下拉列表

[英]Hierarchial dynamic dropdown list in Excel

在我的公司,我有一個像這樣的數據庫,我想創建一個分層動態更新下拉列表。

+-----------+----------+--------+
| Institute | Industry | Course |
+-----------+----------+--------+
| a         | aa       | aaa    |
| a         | aa       | bbb    |
| b         | bb       | mmm    |
| b         | cc       | ddd    |
| b         | bb       | ttt    |
| c         | ee       | fff    |
| d         | ee       | ggg    |
+-----------+----------+--------+


我希望最終結果是這樣的。 用戶將從頂部開始。 根據頂部條目,底部列表將相應更改。 以下是快照。

我的用戶條目列表演示結構


我的方法

我的計划是創建一個數組公式,根據前兩個條目索引課程列表。 然后使用offset來獲取課程條目。 但我的問題是,雖然我能夠索引課程列表,但我無法對它們進行排序以用於數據驗證。 數據驗證不會忽略我不想要的非填充或錯誤值。 假設我解決了第一個層次結構問題,我就是研究所和行業的輸出。 我試過這個

G8 - 來自下拉列表的研究所輸入
G9 - 來自下拉列表的行業輸入
H11:H15 - 各自的課程

H11:H15中的公式為{=INDEX(C2:C8,1/(1/((A2:A8=G8)*(B2:B8=H8)*(ROW(C2:C8)-1))))}
這是我得到的輸出

我很想發布問題。 如果我能說得更清楚,請告訴我。 此外,我在上網時發現了這些非常有用的鏈接。 請原諒我添加代碼,因為SO不允許新成員使用2個以上的鏈接

1: http://www.contextures.com/xlDataVal02.html
2: https://www.ablebits.com/office-addins-blog/2014/09/30/dependent-cascading-dropdown-lists-excel/

我想你想要的是把這個公式作為一個數組放入H11:H18:

=IFERROR(INDEX(C2:C8,AGGREGATE(15,6,(ROW(C2:C8)-1)/((A2:A8=G8)*(B2:B8=G9)),ROW()-ROW(H10)),1),"")

然后,您可以將課程選項的數據驗證設置為H11:H18。

在此輸入圖像描述

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM