【问题标题】:Excel multiple criteria by row按行 Excel 多个条件
【发布时间】:2019-01-18 14:32:12
【问题描述】:

我在使用 Excel 时遇到问题。我有一个包含参考书目的数据集。对于每一行,我都有来自特定标题的每个作者,以列分隔。我想在作者之间建立关联,看看哪些人一起发表过文章以及发表了多少次。

数据集示例:

full view

想要的输出:

full view

我有大约 43 列乘以 500 行。我已经尝试过COUNTIFSSUMPRODUCT,但两者都没有给我想要的输出。

感谢您的帮助:)

【问题讨论】:

  • 您使用的公式是什么?看起来您只需将名称组合在列表中,删除重复项,复制/转置然后执行COUNTIFS()?
  • 我认为Countifs可能有太多列不实用,需要一个数组公式。
  • 已经尝试过 COUNTIFS() 和 SUMPRODUCT(),但没有得到预期的输出

标签: excel count row multiple-columns


【解决方案1】:

可能有比这更简单的方法,但是有43列(很多合著者?)我只能想到使用数组公式,所以方法是:-

(1) 获取第一作者原始数据的行总数

(2) 获取第二作者的行总数

(3) 将它们相乘以获得两位作者出现的行(出版物)。

(4) 可选 - 检查每行总数是否大于零 - 除非作者姓名重复,否则不需要。

(5) 将它们全部加起来。

=SUM(--(MMULT(N($A$2:$D$20=G$1),TRANSPOSE(COLUMN($A$1:$D$1))^0)*MMULT(N($A$2:$D$20=$F2),TRANSPOSE(COLUMN($A$1:$D$1))^0)>0))

必须使用 CtrlShiftEnter 作为数组公式输入。

我刚刚使用了缩写来演示该方法。

我已使用“#”对它们进行了格式化,以使零显示为空白。

【讨论】:

  • 构建一个脚本会更容易吗,也许在 python 中,构建这个表?我希望在添加新作者时能够轻松复制该过程。
  • 是的,您可能是对的,它位于您使用 Excel 公式和使用编程工具(VBA、Python 或任何您熟悉的工具)的边界上。我还没有解决如何首先获得各个不同作者的字母顺序列表的问题 - 以@BruceWayne 概述的方式假设 - 添加,排序删除重复项。如果您希望它是动态的,那么使用 Excel 公式将非常具有挑战性,并且可能是不明智的,除非其他人知道不同。
  • 我不是很熟悉,我只知道基本的python,但认为不足以为此开发脚本。你们有谁知道一些可以帮助我开发这种脚本的教程吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-02-20
  • 2014-02-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多