簡體   English   中英

行集群值的條件下拉列表

[英]conditional drop-down list on row cluster values

我有下表:

桌子

有沒有辦法讓動態下拉列表包括來自同一集群的所有值(鏈接列表列中可能值的示例)? 集群列很大,所以我正在尋找動態解決方案。

所以你可以用公式來做到這一點,但它有點復雜。 底線是,這是我想出的結果:

在此處輸入圖像描述

下拉菜單是使用動態命名范圍和公式動態創建的

我們需要從一些定義開始。 這是我的測試工作表和數據:

在此處輸入圖像描述

這些公式將使用命名范圍來計算,因此您可以將您的“工作區域”(綠色框區域)放在幾乎任何地方,包括在不同的(可能是隱藏的)工作表上。

您必須定義四個動態命名范圍,如下所示,它們與上圖中的顏色陰影區域相匹配:

在此處輸入圖像描述

其中許多公式是數組公式,因此您必須小心使用CTRL + SHIFT + ENTER輸入它們。

定義數據區域和名稱后,要填充的第一個區域是UniqueClusterList (工作表上的范圍是F2:M2 )。 我們正在根據您的集群值列中的數據構建唯一項目列表。 因此,您需要一個 數組公式來標識范圍內的所有唯一值 在區域中的每個單元格中,為每個單元格輸入數組公式CTRL + SHIFT + ENTER

Cell F2    =IFERROR(LOOKUP(2,1/(COUNTIF($E$2:E2,ClusterList)=0),ClusterList),"")
Cell G2    =IFERROR(LOOKUP(2,1/(COUNTIF($E$2:F2,ClusterList)=0),ClusterList),"")
Cell H2    =IFERROR(LOOKUP(2,1/(COUNTIF($E$2:G2,ClusterList)=0),ClusterList),"")
Cell I2    =IFERROR(LOOKUP(2,1/(COUNTIF($E$2:H2,ClusterList)=0),ClusterList),"")

... 等等。 請注意,只有中間的單元格地址發生了變化。

接下來,我們需要為每個唯一的 Cluster 值建立 ID 列表。 這也是一個數組公式。 從單元格F3開始,使用CTRL + SHIFT + ENTER

=IFERROR(INDEX(IDList, SMALL(IF(F$2=ClusterList, ROW(IDList)-2,""), ROW()-2)),"")

然后使用您的 cursor 在該單元格的選擇框中抓取自動填充圖標並將其向下拖動到單元格F16 由於現在選擇了單元格F3:F16 ,因此重新抓住自動填充圖標並向右拖動以填充整個范圍F2:M16 所有值都應按照公式計算彈出。

最后一步是為下拉列表創建查找公式。 所以 select 單元格C3 ,然后在功能區上單擊數據 --> 數據工具 --> 數據驗證以獲取對話框 window。 現在 select Allow: List ,並在Source:字段中輸入以下公式:

 =OFFSET($F$2,1,MATCH(A3,UniqueClusterList,0)-1,SUMPRODUCT(COUNTIF(IDList,OFFSET($F$2,0,MATCH(A3,UniqueClusterList,0)-1,MAXUNIQUE,1))),1)

在此處輸入圖像描述

您現在將在單元格C3中有一個與上面的第一張圖片匹配的下拉菜單。 將自動填充選擇圖標一直拖到單元格C20 ,所有這些單元格將根據可用的集群和 ID 正確計算下拉列表。

暫無
暫無

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

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