如果 2 列与第 3 列的值匹配,则填充下拉框

Populate Dropdown Box if 2 columns match with values from 3rd column

我正在使用 Excel 中的数据验证列表来处理基于数据库中的数据字典的内容。设置如下:

    Sheet1
    column A - DB Table Name (repeats for as many rows as there are associated values in column B)
    Column B - List of all values associated with the DB table name in column A
Example Sheet1
Column A  |  Column B
DB1       | ValueA1
DB1       | ValueA2
DB1       | ValueA3
DB2       | ValueB1
DB3       | ValueC1
DB3       | ValueC2

在 Sheet 2 我在单元格 D1 中有一个下拉数据验证,它是从 table 填充的。 table中的所有选项都是Sheet1的ColumnA中的数据库名称。基于 Sheet2 上单元格 D1 的数据库选择,我希望 sheet2 的 B1 是 Sheet1 B 列中所有匹配值的下拉列表,其中 Sheet2 单元格 D1匹配 Sheet1 列 A.

示例:人在 Sheet2 单元格 D1 中选择 DB3。然后 Sheet2 中的单元格 B1 变为包含值 [ValueC1, ValueC2] 的下拉列表。这些是 Sheet1 中的 B 列值,名称匹配 Sheet2 D1 和 Sheet1 A 列。

使用 Index 和 vlookup 尝试了很多事情,但我没有得到多个结果,因此数据验证不会采用公式,因为它只有 returns 一个结果。

我希望这是有道理的...

1] 在“sheet 1”中,C 列 C2:C4 创建一个 "UniqueList of data A" :输入 DB1、DB2 和 DB3

2] 在“sheet 2”中 D1 >> Data Validation >>

Allow : List

Source : =Sheet1!$C:$C

Select OK

3] 在“sheet 2”中 B1 >> Data Validation >>

Allow : List

Source : =OFFSET(Sheet1!$B,MATCH($D1,Sheet1!$A:$A,0),0,COUNTIF(Sheet1!$A:$A,$D1))

Select OK