【问题标题】:Is it possible to external reference a path once?是否可以一次外部引用路径?
【发布时间】:2018-06-20 05:39:49
【问题描述】:

所以我有两个工作簿,其中工作簿 A 从工作簿 B 的不同工作表中提取不同的单元格并将它们一起添加。问题是,由于文件路径的原因,它做的太多以至于最终导致公式超过 8000 多个字符。

是否有有助于缩短此时间的公式或方法?也许您只引用文件路径一次,然后公式中的每个单元格引用都知道它指向同一个文件路径?不断重复文件路径以获取工作表和单元格引用的过程是导致当前简单加法公式膨胀的原因。我不能使用 SUM 函数,它会捕获其他不想要的数据。

【问题讨论】:

  • 你的公式/布局是什么?如果只是打开和关闭所需的工作表,VBA 是否可行?

标签: excel excel-formula


【解决方案1】:

如果您对想要求和的值有一个标准,则可以使用 SUMIF/S 函数根据您的标准添加这些值。

例如:=SUMIF('D:\test\[test_file.xlsx]Sheet1'!A1:A200,">="&3,'D:\test\[test_file.xlsx]Sheet1'!A1:A200)

将在 D:\test\ 目录下 test_file.xlsx 的 Sheet1 的 A1:A200 范围内添加等于或大于 3 的值。

另一种方法是在单元格中输入源工作簿目录并使用 INDIRECT 函数进行添加。

例如:如果您在单元格 B1 中输入 'D:\test\[test_file.xlsx]Sheet1'! 作为文本,您可以通过输入 =sum(indirect(B1&"A2"),indirect(B1&"A5"),indirect(B1&"A7")) 添加 A2、A5 和 A7 的值,从而显着减少字符长度。

您也可以尝试将源工作簿的所有相关单元格引用到目标工作簿中的另一个工作表,并从该“帮助”工作表中进行添加。

我更喜欢 SUMIF/S 选项并且有一个可靠的标准可以使用。

【讨论】:

    【解决方案2】:

    似乎对我有用的是使用 SUMPRODUCT。它大大减少了公式的长度。由于有一个标准标准,我想在不同的工作表中相乘,因此 Array one 指的是从第一个工作表中查找匹配的标准,然后对每个工作表使用 Array 2。

    【讨论】:

      猜你喜欢
      • 2018-02-15
      • 2020-04-11
      • 1970-01-01
      • 2018-06-03
      • 2020-08-28
      • 1970-01-01
      • 2018-12-04
      • 2023-04-03
      • 1970-01-01
      相关资源
      最近更新 更多