【问题标题】:Using of INDIRECT formula in many ranges在多个范围内使用 INDIRECT 公式
【发布时间】:2018-11-01 18:37:45
【问题描述】:

我是标准的 excel 用户(我只知道记录宏:)),但我真的需要你的帮助,我迷路了。我将尝试描述我需要做什么。

我正在尝试根据之前的选择应用有限的下拉菜单。请找图片:

数据(A、B 列)

下拉菜单(G、H)

我需要的是,用户在 G 列中选择一些具体的公司。他将在 H 列中有有限的下拉菜单。所以我需要的一切都是通过数据验证(菜单 - 数据)使用 INDIRECT 公式,但为此我需要获取 B 列中每个范围的名称,这将可用(对于同一公司),所以名称这些范围必须具有每个公司的准确名称(a、b、c ...等)。

问题是我有数百家公司。您有什么想法吗,我该如何进行宏,将这些名称分配给 B 列中的所有范围,名称与 A 列相同?

如果您有任何其他想法我可以解决这个问题,这对我来说也足够了。 谢谢。

弗兰塔

【问题讨论】:

标签: excel vba excel-formula excel-indirect


【解决方案1】:

这里更好的方法是将OFFSET 用于数据验证列表公式。

H2 应用数据验证列表使用

=OFFSET($B$1,MATCH($G2,$A:$A,0)-1,,COUNTIFS($A:$A,$G2),1)

这是做什么的:

  • A (MATCH($G2,$A:$A,0)) 列中查找包含公司第一个实例的行
  • 计算A (COUNTIFS($A:$A,$G2)) 列中公司的实例数
  • 通过行匹配 -1 创建从 B1 的范围偏移,并将其大小调整为公司计数
  • 这是验证使用的范围

注意:这取决于样本数据中显示的排序公司

【讨论】:

    猜你喜欢
    • 2014-04-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-10-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多