我有一個電子表格,其中客戶必須在Excel中爲(1)帳戶,(2)帳戶名稱和(3)帳戶類別進行下拉選擇並且依賴於每個其他。我實際上做了一個非VBA下拉列表相互依賴。問題是,下拉列表只能一次一個地工作,而不是進行多個選擇。Excel VBA下拉列表與多選的從屬列表
所以我想要的當然是下拉列表不僅適用於一行,而且可以選擇多行。 這個下拉列表的唯一方法將工作非VBA是通過創建作爲我的許多唯一列表取決於帳戶和他們的家屬的數量。
至今沒有使用Excel VBA我也做了以下內容:
我已定義的名稱3主名單範圍:GLacct,GLname,&桂林航專:
創建 - 3唯一列表: 因此,當選擇第一個DDL「55700」時,將填充此唯一列表,下一個DDL將填充「Research-Other」,然後下一個DDL將填充與「Research-Other」對應的3個選項。
所以在Excel中創建的唯一列表我添加這些公式:
UniqueGLacct: `INDEX(GLacct,MATCH(0,COUNTIF($F$1:F1,GLacct),0))`
UniqueGLname:
`INDEX(GLname,MATCH(0,COUNTIF($G$1:G1,GLname)+(GLacct<>TM!$A$16),0))`
UniqueGLcat:
`INDEX(GLcat,MATCH(0,COUNTIF($H$1:H1,GLcat)+(GLacct<>TM!$A$16)+(GLname<>TM!$B$16),0))`
名稱管理器 - 指並添加以下公式:
GLacct:
Offset(TB!$A$2,0,0,COUNTA(TB!$A$2:$A$1000))
GLname:Offset(TB!$B$2,0,0,COUNTA(TB!$B$2:$B$1000))
桂林航專:Offset(TB!$C$2,0,0,COUNTA(TB!$C$2:$C$1000))
uniqueGLacct:
OFFSET(TB!$F$2,0,0,COUNT(IF(TB!$F$2:$F$1000=」」,」」,1)),1)
uniqueGLname:OFFSET(TB!$G$2,0,0,COUNT(IF(TB!$G$2:$G$1000=」」,」」,1)),1)
uniqueGLcat:OFFSET(TB!$H$2,0,0,COUNT(IF(TB!$H$2:$H$1000=」」,」」,1)),1)
添加的數據驗證,以需要下拉在工作表列表命名™細胞:(問題是,如果我在那裏進行另一選擇下一行,我仍然從第一個選擇中獲得數據,這意味着爲了工作,我必須爲每個帳戶創建儘可能多的唯一列表。
細胞:A16:uniqueGLacct
細胞:B16:uniqueGLname
細胞:C16:uniqueGLcat
我怎麼會做這個Excel下拉列表動態3列出依賴於多個使用Excel VBA進行選擇。但是,如果您注意到55700以下的帳戶無法通過他們的從屬列表,因爲首先選擇的是55700. 這種不使用VBA的唯一方法是通過爲每個依賴帳戶創建唯一列表。