【问题标题】:Count the quantity of unique combinations in multiple columns in Excel计算Excel中多列中唯一组合的数量
【发布时间】:2017-01-06 19:39:44
【问题描述】:

我需要让 excel 计算数字对出现在同一行的次数,而不管它们的顺序如何。以下是我正在寻找的。 C 列将显示 A 和 B 包含相同数字的次数,但不一定在相同的列(或顺序)中。下面的例子: 6 2 和 2 6 应该被认为是同一个东西。因此,对于 6 2 和 2 6,C 列中的计数应该 = 2。

我的目标:

我尝试了以下链接中建议的数据透视表,它成功计算了匹配对,但例如 6 2 和 2 6 被认为不一样,每个计数只有 1。

This simple pivot table solution almost works

谢谢!它们似乎都可以工作,但我找到的最简单的解决方案是Quick to copy for large data

【问题讨论】:

    标签: excel


    【解决方案1】:

    使用这个数组公式:

    =SUM(COUNTIFS(A:A,A1:B1,B:B,TRANSPOSE(A1:B1)))
    

    作为数组公式,退出编辑模式时必须使用 Ctrl-Shift-Enter 而不是 Enter 来确认。如果操作正确,则 excel 会将{} 放在公式周围。

    【讨论】:

      【解决方案2】:

      使用您发布的solution from SuperUser,但使用:

      =CONCATENATE(MAX(A2:B2),MIN(A2:B2))
      

      【讨论】:

      • 这将如何处理 A=B?我不是想在您的解决方案中挑选漏洞,我目前正在火车上无法访问 Excel。我也有类似的想法,但担心 A=B。
      • @CJC,2和2的最大值是多少?它是 2,所以是最小值。所以它会返回 22。
      【解决方案3】:

      我正在考虑使用COUNTIFS 的单一公式解决方案,但目前找不到,所以这里有两个公式版本。

      在D列=IF(A2<B2,A2&", "&B2,B2&", "&A2)

      在C列=COUNTIF(D:D, D2)

      这将在 D 列中创建一个具有以下逻辑的列表;

      If A < B then A goes first
      If A > B then B goes first 
      If A = B then B goes first but it doesn't really matter 
      

      列表将是一组字符串,然后我们对其进行计数。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-06-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-11-13
        • 1970-01-01
        • 1970-01-01
        • 2021-09-10
        相关资源
        最近更新 更多