我有以下工作表:
A B C D E
+-----+-----------+---------+--------+-------------+
1 |FALSE|Lot ABC123 |Product 1|Used qty|remaining qty|
+-----+-----------+---------+--------+-------------+
2 |TRUE |Lot ABC321 |Product 2|Used qty|remaining qty|
+-----+-----------+---------+--------+-------------+
3 |TRUE |Lot ABC456 |Product 1|Used qty|remaining qty|
+-----+-----------+---------+--------+-------------+
4 |FALSE|Lot ABC111 |Product 3|Used qty|remaining qty|
+-----+-----------+---------+--------+-------------+
5 | | | | | |
+-----+-----------+---------+--------+-------------+
6 | | | | | |
+-----+-----------+---------+--------+-------------+
为了在另一个工作表中创建一个下拉列表,我为列C创建了一个动态命名范围,用于选择所有单元格到最后一个使用=OFFSET($C$1,0,0,COUNTA($C:$C)-0,1)
的单元格
是否可以创建相同的范围,但只能使用仍然可用的产品(E> 0)?
尝试=IF($E1>0,OFFSET($C$1,0,0,COUNTA($C:$C)-0,1),"")
但它不起作用。
由于从下拉列表中选择的值在不同的工作表中用于获取在此工作表的B列中找到的值,因此进一步的步骤是告诉Excel一旦“E1 = 0”它应该解释任何新的“product1”作为C3中的product1而不是C1,并取B3而不是B1 我想这最后一步需要一点VBA。