arrays - Excel - Sumifs 使用数组引用单元格
问题描述
我正在尝试编写一个 sumifs 公式,该公式在标准中包含一个数组,但该数组位于 sumifs 公式将引用的另一个单元格中。
例如,我想实现这个结果,如果 A 列等于 5003 和 5009,我将对 B 列求和:
=SUM(SUMIFS(B:B,A:A,{"5003","5009"}))
但是,我不想在公式中写出 "{"5003","5009"}",而是希望这部分引用另一个包含该数组的单元格。例如,我想做类似的事情:
=SUM(SUMIFS(B:B,A:A,D1))
其中 D1 等于:
D1="{"5003","5009"}"
我怎样才能做到这一点?
解决方案
如果D1
您的标准是逗号分隔的,那么您可以使用FILTERXML()
为SUMIFS()
标准构建一个数组。试试下面
=SUM(SUMIFS(B:B,A:A,FILTERXML("<t><s>"&SUBSTITUTE($D$1,",","</s><s>")&"</s></t>","//s")))
如果您的数据与单元格中的数据完全相同"{"5003","5009"}"
,请D1
尝试以下公式。
=SUM(SUMIFS(B:B,A:A,FILTERXML("<t><s>"&SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE($D$1,CHAR(34),""),"{",""),"}",""),",","</s><s>")&"</s></t>","//s")))
推荐阅读
- python - 从列表中删除元素
- tensorflow - tensorflow:如何使用 tf.nn.leaky_relu 和 alpha 作为 tf.contrib.layers.fully_connected 的activation_fn?
- ios - 无法单击自定义 UICollectionViewCell 内容
- node.js - 使用 multer 发送状态和文件
- tensorflow - Tensorflow - 训练亚当
- c - 什么是形式参数中的默认存储类
- azure - 如何在 VSTS 中部署 azure 函数应用代码和 ARM 模板
- r - 什么是 dplyr rowwise() 的 Plyr 版本
- azure - 如何使用 Terraform 将 VM 添加到 Azure 中的负载均衡器?
- sql - 我不知道如何创建这个 sql 查询