这是一个我知道可以在 VBA 中轻松编码的问题,但我正在尝试在公式中实现它。
我正在尝试建立一个列表(使用数据验证),但我希望这个列表只包含 部分 的范围,符合一定条件 .
因此,假设我希望将列表存储在 C5
,假设我在另一个名为 Example_Range
的工作表中有一个范围.我希望列表由 Example_Range
中的单元格组成。 , 这样它们上方的两个单元格与 C5
上方的其他两个单元格相同.
所以简而言之,我只需要从 Range_Example
中获取单元格位于与位于 C5
上方的单元格相同的单元格下方(我希望列表去哪里)。
注意 Example_Range
与包含 C5
的工作表位于不同的工作表中.
我知道我可以将公式插入 Source
数据验证中的字段,但我不知道如何构建这种类型的公式。任何帮助,将不胜感激!
这是一个实际的例子:
我在“Sheet2”中有这些数据:
我想在“Sheet1”的红色单元格中使用数据验证创建一个列表:
我需要包含 20、15、10 的列表,因为在红色方 block 上方的“Sheet1”中,这是我收到的输入。但是,如果红色单元格上方的两个单元格有“Mazda”和“Lantis”,我希望列表中只填充 45 个。
所以我的范围是“Sheet2”中的整个第 4 行,但我不想要该范围内的所有项目,只需要其上方的单元格与红色单元格上方的单元格(列表将出现的位置)相同的那些项目“表 1”。
最佳答案
这有点令人费解,但我找到了一个完成此任务的过程:
在表 2
=IF(AND(A2=Sheet1!$A$2,A3=Sheet1!$A$3),A4,"x")
, 拖到 E 列 =IF(A6="x","-",1)
=IF(B6="x","-",MAX($A7:A7)+1)
, 拖到 E7 =IFERROR(INDEX($A$6:$E$6,MATCH(G6,$A$7:$E$7,0)),"X")
, 拖到 K7 list
指的是:=OFFSET(Sheet3!$G$7,0,0,1,COUNT(Sheet3!$G$7:$K$7))
然后使用列表作为工作表 1 单元格 A4 中的数据验证。
全图 View 的屏幕截图(例如马自达兰蒂斯,但我也为其他人测试过。):
关于excel - 使用满足特定条件的单元格创建数据验证列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35187272/