计算满足条件的唯一值(不使用 Pivot 和 Unique() 函数)

问题描述 投票:0回答:2

如果表在记录中使用不使用 Pivot 或 Unique() 公式的 Code 1 函数显示两次,我需要帮助计算表的唯一类型。

正如您在下面的屏幕截图中看到的,我使用数据透视表来获取唯一的员工编号并显示其类型和功能(F-I 列)。基本上是整个表格的总结。

通过这样做,我将能够获得具有超过 2 个条目(K-M 列)的功能代码 1 的所有唯一员工 ID 的最终计数。仅应计算员工 2 和员工 4(总共 2 个唯一计数),因为它们都有 2 个具有代码 1 功能的条目。

注意,我没有计算员工 6(以红色突出显示),因为它位于代码 2 下,尽管它有 2 个条目。

有没有一种方法可以在不使用数据透视表和不使用最新的 MS Office 功能(例如 Unique())的情况下执行此操作。谢谢!

员工编号 类型 功能
员工1 阿尔法 代码1
员工2 阿尔法 代码1
员工3 阿尔法 代码1
员工4 阿尔法 代码1
员工2 阿尔法 代码1
员工4 阿尔法 代码1
员工9 测试版 代码1
员工6 测试版 代码2
员工 7 测试版 代码1
员工9 测试版 代码1
员工5 测试版 代码1
员工6 测试版 代码2
员工8 测试版 代码1
excel excel-formula excel-2010 excel-2007
2个回答
0
投票

这应该适用于 2007 或 2010 版本。

使用以下命令填充单元格 E4 及以下:

=COUNTIFS(B$4:B$16,B4,C$4:C$16,C4,D$4:D$16,D4)

使用以下方法填充单元格 M4:M5:

=COUNTIFS(C$4:C$16,K4,D$4:D$16,L4,E$4:E$16,">1")/2


0
投票

如果我理解正确,那么需要

FREQUENCY()
函数来完成所需的输出。


• 单元格中使用的公式 H4

=SUMPRODUCT(N(IFERROR(IF(($F4=$C$4:$C$16)*($G4=$D$4:$D$16),
 FREQUENCY(MATCH($B$4:$B$16&"|"&($F4=$C$4:$C$16)*($G4=$D$4:$D$16),
 $B$4:$B$16&"|"&($F4=$C$4:$C$16)*($G4=$D$4:$D$16),0),
 (ROW($B$4:$B$16)-ROW($B$4)+1))>1,0),0)))

  • MATCH()
    函数 --> 将
    |
    范围与
    Employee Number
    Type
    Boolean values of matching with 
    Function
    &
    F
    cells in columns
    G
    &
    C
    with the corresponding ranges in
    D`连接起来,然后寻找匹配同一串联数组中的值以查找重复项。
  • &
  • 函数 --> 用于使用 B 列的
    FREQUENCY()
    数字来计算
    MATCH()
    函数返回的数组中每个唯一值的出现次数(转换为相对引用数组)数字)以返回相对计数。
  • ROW()
  • 函数 --> 在执行上述步骤之前,我们需要判断 Column
    IF()
    &
    Type
    中的
    Function
    &
    F
    是否与
    G
    &
    C
    中的范围匹配,如果确实如此,我们正在执行上述其他操作以返回
    D
  • 0
  • 函数确保通过
    IFERROR()
    消除错误值,并且
    0
    函数将返回的数组转换为数字。
    最后使用
  • N()
  • 函数计算两个数组的总和。
    
    
下面显示与步骤相关的屏幕截图:


© www.soinside.com 2019 - 2024. All rights reserved.