1

我想列出我篮子里的所有水果,然后把水果送给我的朋友,这样做下拉列表中的选项会自动减少。

A 栏:水果数量 B 栏:水果 C 栏:名称 D 栏:下拉列表

例如,我有 1 个凤梨、0 个苹果和 2 个橙子。当我给我的第一个朋友一个水果时,下拉列表中的选项是“凤梨”;“橙”; “橙”。

如果我给我的一个朋友一个凤梨,那么下拉列表变成“橙色”,其他人的“橙色”等等。

用Excel可以做到吗?如果是这样,是否可以不使用 VBA、使用数据验证和常规公式?

谢谢你。

4

1 回答 1

0

这是可能的,但涉及几个步骤。

我假设水果数量在A1:A5,水果名称B1:B5,朋友姓名C1:C5和篮子列表下拉选择在D1:D5。我将F1:F5用于列表计算,G1:G15并将保存下拉列表的篮子列表。

  1. 根据数量和篮子的使用情况,计算每个水果应该从篮子列表中的哪一行开始:
    • F1 =A1-COUNTIF($D$1:$D$5,B1)
    • F2 =A2+F1-COUNTIF($D$1:$D$5,B2)
    • 将 F2 复制到 F3:F5。
  2. 为下拉菜单创建篮子列表:
    • G1:G15 =INDIRECT("B"&COUNTIF($F$1:$F$5,"<"&ROW())+1)
  3. 为:创建数据验证列表D1:D5
    • 在列表源中放置=OFFSET($G$1:$G$15,0,0,COUNTIF($G$1:$G$15,"<>0")). 我假设水果名称中第 5 行下的单元格将为空,因此列表中的其余行将获得 value 0,因此"<>0"列表中的 count

现在,当您从验证列表中选择一种水果时,该列表将相应更新。

于 2015-04-21T01:23:29.883 回答