【问题标题】:Excel function: reference to array in cellExcel函数:引用单元格中的数组
【发布时间】:2018-02-26 20:21:34
【问题描述】:

我在单元格 A1 中有一个数组,通过

A1 = {=G6:J6} = {"aa"."b"."ccc".1} 

现在我想将单元格 A1 用于 B1 中的数组公式。基本上B1应该是

B1 = SUMPRODUKT((C6:C12)*(B6:B12=G6:J6))

但我不想直接引用 G6:J6,而是使用 A1。我刚试过:

B1 = SUMPRODUKT((C6:C12)*(B6:B12=A1))
B1 =  {=SUMPRODUKT((C6:C12)*(B6:B12=A1))}

但这行不通。有没有办法让它工作?

您好, 彼得

对于出现的问题:

单元格 G6:J6 是输入数据,例如商品编号。我只想在工作表中设置一次输入数据,因此我必须更新更少的数据。 G6:J6 中的条目是字符串或数字。假设 G6 = "aa"、H6 = "b"、I6 = "ccc" 和 J6 = 1。

单元格 B1 是我需要使用数据的地方。它宁愿在另一张纸上,但对于更简单的例子,我们假设它是单元格 B1。在 B1 中,我当然可以参考 G6:J6,但这会使公式变得不那么容易阅读。因此,我想在 B1 旁边放一个参考 A1,以便人们可以轻松查看 B1 使用的数据。

C6:C12 是一些数字,B6:B12 是一些可能与 G6:J6 匹配的字符串/数字。所以 sumproduct 应该总结匹配项。

【问题讨论】:

  • Sumproduct 的概念是什么? B6:B12=A1 是什么?
  • 能否提供样张和预期结果?从您的问题来看,尚不清楚您要达到的目标

标签: arrays excel


【解决方案1】:

您的单元格 A1 包含一个数组公式或数组范围,但它只包含来自该数组或范围的单个值(每个 Excel 单元格只能包含一个结果值)。

因此,您需要将 SUMPRODUCT 中的 A1 替换为数组或范围表达式。

【讨论】:

  • 有什么解决方法吗?还是我必须始终引用原始数组?
  • 没有简单的解决方法:最好的答案总是使用原始数组/范围
【解决方案2】:

单元格A1 的值应为G6:J6

G6:J6 根据需要填充 {"aa","bb","ccc",1} 然后在 B1 中输入以下公式并检查这是否是您需要的。

=SUMPRODUCT(C6:C12*ISNUMBER(SEARCH(B6:B12,INDIRECT(A1))))

【讨论】:

  • 嗨,我会检查这是否给了我结果。但是,我认为最好简单地参考原始范围。它必须比您的结果快得多。
猜你喜欢
  • 1970-01-01
  • 2021-10-16
  • 1970-01-01
  • 2013-03-18
  • 2021-11-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多