【问题标题】:excel drop down corresponding to a mutual cell对应于相互单元格的excel下拉列表
【发布时间】:2017-05-15 02:59:58
【问题描述】:

尝试在不使用 VBA 的情况下完成此任务 - 我有两组数据:类别和子类别,它们都包含名称/描述以及用于识别它们的数字。我有一个使用数据验证的类别的下拉列表,它使用 VLOOKUP 为该类别提取相应的数字。我现在正在尝试创建第二个下拉菜单,它将向我显示子类别,但仅显示它们相应的类别。类别和子类别列表在单独的页面上列出。子类别还有第三列列出类别编号。请参阅下面的示例。

SubCategory SubCatNumber    Category Number
Carrots     00              10
Celery      02              10
Onions      03              10
Apples      00              12
Bananas     02              12
Cantaloupe  03              12

因此,当我从现有下拉列表中选择类别 10 时,子猫的下拉列表会显示胡萝卜、芹菜和洋葱。我尝试过使用另一个 VLOOKUP 以及 INDEX 和 OFFSET 的组合,但似乎无法做到这一点。任何帮助,将不胜感激。

【问题讨论】:

    标签: excel drop-down-menu


    【解决方案1】:

    将您的每个下拉菜单链接到一个命名范围,以便命名范围的单元格中的任何内容都将显示在下拉列表中。

    为每个子类别创建范围(命名它们会更容易)并用正确的选项填充它们。

    最后,将链接到子类别下拉列表的范围链接到由主类别下拉列表中的选择定义的命名范围。

    这里有两个例子,都基于这张图片中显示的命名范围

    示例 1 需要一些代码。

    示例 2 无需代码即可工作。

    【讨论】:

    • 感谢您的回复和广泛的示例 - 但是我认为这对于我正在尝试做的事情不太有效。我不需要根据它是名为 Grains 的类别的一部分来选择大米。我需要能够根据与谷物相关的类别编号来选择大米。不过,我将尝试使用命名范围,看看我是否想出任何可行的方法。
    • “Grains”是数字还是单词应该没有任何区别。关键是第一个下拉列表中的每个选择都会导致第二个列表。该列表必须存在(示例 1)或者必须动态生成(示例 2)。
    • 我在您的示例以及网络上的其他示例中注意到的另一件事是我的数据需要在 3 列中 - 而您的数据需要在每个项目的单独列中细分(请参阅我的初始帖子中的示例)。有什么方法可以以类似的方式生成具有该约束的列表?
    • 在我的示例中,您有五个类别(水果、谷物、肉类、糖果、蔬菜),它们位于 水平 列表中。您只需要两个(10 和 12)。在第 10 类下,您将有胡萝卜、芹菜、洋葱。
    【解决方案2】:

    感谢您在这方面的帮助。最终你是对的,这只是创建动态命名范围然后使用 OFFSET 函数能够提供基于垂直对齐列表的下拉列表的问题。这是我最终用于第二级下拉菜单的功能

    =OFFSET(CatStart,MATCH(D3,CatSubCatColumn,0)-1,1,COUNTIF(CatSubCatColumn,D3),1)

    【讨论】:

      猜你喜欢
      • 2012-12-24
      • 1970-01-01
      • 1970-01-01
      • 2012-04-22
      • 2019-07-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多