Excel 从 A 列:数字和 B 列:项目创建的下拉列表,然后减少选项
Excel drop down list created from col A: number and col B: item, then reducing options
我想列出我篮子里的所有水果,然后把水果送给我的朋友,这样做下拉列表中的选项会自动减少。
A 列:水果数量
B栏:水果
C 列:名称
D 列:下拉列表
例如,我有 1 个凤梨、0 个苹果和 2 个橙子。
当我给第一个朋友送水果时,下拉列表中的选项是"ananas"; "orange"; "orange".
如果我给朋友一个凤梨,那么下拉列表会变成 "orange",其他人会变成 "orange",依此类推。
用Excel可以吗?
如果是这样,是否可以不使用 VBA,使用数据验证和常规公式?
谢谢。
这是可能的,但涉及几个步骤。
我假设水果数量在 A1:A5
、水果名称 B1:B5
、朋友名称 C1:C5
和篮子列表下拉菜单 selection 在 D1:D5
。
我将使用 F1:F5
进行列表计算,G1:G15
将保留下拉列表的篮子列表。
- 根据数量和篮子用途,计算每个水果在篮子列表中应该从哪一行开始:
- F1
=A1-COUNTIF($D:$D,B1)
.
- F2
=A2+F1-COUNTIF($D:$D,B2)
.
- 复制F2到F3:F5。
- 为下拉列表创建购物篮列表:
- G1:G15
=INDIRECT("B"&COUNTIF($F:$F,"<"&ROW())+1)
.
- 为
D1:D5
创建一个 数据验证 列表:
- 在源列表中输入
=OFFSET($G:$G,0,0,COUNTIF($G:$G,"<>0"))
。 我假设水果名称中第 5 行下的单元格将为空,因此列表中的其余行将获得值 0
,因此列表中的 "<>0"
计数 .
现在,当您 select 从验证列表中选择一个水果时,该列表将相应更新。
我想列出我篮子里的所有水果,然后把水果送给我的朋友,这样做下拉列表中的选项会自动减少。
A 列:水果数量 B栏:水果 C 列:名称 D 列:下拉列表
例如,我有 1 个凤梨、0 个苹果和 2 个橙子。 当我给第一个朋友送水果时,下拉列表中的选项是"ananas"; "orange"; "orange".
如果我给朋友一个凤梨,那么下拉列表会变成 "orange",其他人会变成 "orange",依此类推。
用Excel可以吗? 如果是这样,是否可以不使用 VBA,使用数据验证和常规公式?
谢谢。
这是可能的,但涉及几个步骤。
我假设水果数量在 A1:A5
、水果名称 B1:B5
、朋友名称 C1:C5
和篮子列表下拉菜单 selection 在 D1:D5
。
我将使用 F1:F5
进行列表计算,G1:G15
将保留下拉列表的篮子列表。
- 根据数量和篮子用途,计算每个水果在篮子列表中应该从哪一行开始:
- F1
=A1-COUNTIF($D:$D,B1)
. - F2
=A2+F1-COUNTIF($D:$D,B2)
. - 复制F2到F3:F5。
- F1
- 为下拉列表创建购物篮列表:
- G1:G15
=INDIRECT("B"&COUNTIF($F:$F,"<"&ROW())+1)
.
- G1:G15
- 为
D1:D5
创建一个 数据验证 列表:- 在源列表中输入
=OFFSET($G:$G,0,0,COUNTIF($G:$G,"<>0"))
。 我假设水果名称中第 5 行下的单元格将为空,因此列表中的其余行将获得值0
,因此列表中的"<>0"
计数 .
- 在源列表中输入
现在,当您 select 从验证列表中选择一个水果时,该列表将相应更新。