use*_*422 134 excel pivot-table excel-formula
这似乎是一个简单的数据透视表来学习.我想为我正在分组的特定值计算唯一值.
例如,我有这个:
ABC 123
ABC 123
ABC 123
DEF 456
DEF 567
DEF 456
DEF 456
Run Code Online (Sandbox Code Playgroud)
我想要的是一个数据透视表,向我展示了这个:
ABC 1
DEF 2
Run Code Online (Sandbox Code Playgroud)
我创建的简单数据透视表只给了我这个(计算了多少行):
ABC 3
DEF 4
Run Code Online (Sandbox Code Playgroud)
但我想要的是唯一值的数量.
我真正想要做的是找出第一列中哪些值在所有行的第二列中没有相同的值.换句话说,"ABC"是"好","DEF"是"坏"
我确信有一种更简单的方法可以做到这一点,但我想我会试试枢轴表......
Mea*_*ald 248
更新:您现在可以使用Excel 2013自动执行此操作.我已将此创建为新答案,因为我之前的答案实际上解决了稍微不同的问题.
如果您有该版本,则选择您的数据以创建数据透视表,并在创建表时,确保选中"将此数据添加到数据模型"复选框(见下文).

然后,当您的数据透视表打开时,通常会创建行,列和值.然后单击要计算其不同计数的字段并编辑"字段值设置":

最后,向下滚动到最后一个选项,然后选择"Distinct Count".

这应该更新您的数据透视表值以显示您正在查找的数据.
Sid*_*out 106
插入第3列并在Cell中C2粘贴此公式
=IF(SUMPRODUCT(($A$2:$A2=A2)*($B$2:$B2=B2))>1,0,1)
Run Code Online (Sandbox Code Playgroud)
并将其复制下来.现在根据第1列和第3列创建您的数据透视表.查看快照

Mea*_*ald 10
我想在混合中添加一个不需要公式的附加选项,但如果需要在两个不同的列中计算集合中的唯一值,则可能会有所帮助.使用原始示例,我没有:
ABC 123
ABC 123
ABC 123
DEF 456
DEF 567
DEF 456
DEF 456
Run Code Online (Sandbox Code Playgroud)
并希望它显示为:
ABC 1
DEF 2
Run Code Online (Sandbox Code Playgroud)
但更像是:
ABC 123
ABC 123
ABC 123
ABC 456
DEF 123
DEF 456
DEF 567
DEF 456
DEF 456
Run Code Online (Sandbox Code Playgroud)
并希望它显示为:
ABC
123 3
456 1
DEF
123 1
456 3
567 1
Run Code Online (Sandbox Code Playgroud)
我找到了将数据转换为此格式的最佳方法,然后能够进一步操作它是使用以下内容:

选择"Running total in"后,选择辅助数据集的标题(在这种情况下,它将是包含123,456和567的数据集的标题或列标题).这将为您提供主数据集中该集合中项目总数的最大值.
然后我复制了这些数据,将其粘贴为值,然后将其放在另一个数据透视表中,以便更轻松地操作它.
仅供参考,我有大约25万行数据,所以这比一些公式方法要好得多,特别是那些试图比较两列/数据集的方法因为它不断崩溃应用程序.
我发现最简单的方法是使用下面的Distinct Count选项Value Field Settings(左键单击Values窗格中的字段).选项Distinct Count位于列表的最底部.
这是之前(TOP;正常Count)和之后(BOTTOM; Distinct Count)
| 归档时间: |
|
| 查看次数: |
861115 次 |
| 最近记录: |