当前位置: 首页 > 知识库问答 >
问题:

如何在具有过滤器的透视表(Excel for Mac)中获得不同的计数?

韩善
2023-03-14

Excel for Mac不支持Power Pivot,因此没有独特的计数功能。

在这种情况下,最好的解决方法是什么?

示例Excel列:

期间标准1标准2标准3数据

数据透视表示例:

  • “期间”中的不同值将是透视列
  • “Criteria1”可以是透视表的筛选器
  • 两个“标准2”

现在,可以通过pivot直接获得“数据”的计数。

如何获取“数据”的不同计数?

答案选项

  1. 对原始数据使用“Countif” - 缺点:在大数据上非常慢。
  2. 通过连接条件列计算唯一键 - 缺点:在具有许多条件列的大数据中变得复杂并且需要更多精力

是否有更好的解决方法来获得不同的数据透视表(Excel for Mac)内具有过滤器/多个标准的计数?

共有2个答案

祁修诚
2023-03-14

下面的解决方案有几个步骤,但回报是它扩展得非常好,因为公式在大集合和小集合上的性能一样好,而不是查找/匹配,它在更大的集合上变得更慢。

(1)对具有重复值的字段进行自定义排序。例如“电子邮件地址”。注意:如果您更喜欢计算某个特定实例(即具有最新创建日期的记录),请设置排序,以便那些重复项将首先出现。

(2) 创建一个新列,称之为“唯一计数”或其他什么。如果前一个值和当前值不相等,则在该列中使用1的公式。E、 g.=如果(精确(A2,A3),0.1)

(3)向下填充。

(4) 在此表上进行透视。现在,当您执行计数/求和时,请使用唯一计数。

赵炯
2023-03-14

我想我有一个类似的问题,这就是我“修复”它的方式。

  1. 向名为“DistinctValue”的表中添加一列-或“Crit2:Crit3”无所谓
  2. 添加一个公式,将数据透视表中所有字段的值作为行连接起来:=[@Criteria2]

这为数据表中用于数据透视的第一行不同值提供了1。用于透视表的数据行应该正好有一行,每一行的每一部分都有1。如果你把它加起来,你会得到一个完全不同的数字。

如果向数据透视添加新行,则需要将其添加到2.中的公式中,以再次获得不同的值。

编辑:您可能必须将交换;用于公式中的其他语言,例如将公式名称翻译成德语。

 类似资料:
  • 如何仅在Laravel(5.4)中的pivot(中间)表中创建一列,然后对其结果进行过滤? 我有两个模特,电影和剧组。CastAndCrew是为一部电影工作的各种导演、制片人和演员。透视表应定义CastAndCrew成员与电影之间的关系类型。很明显,有人可能在一部电影中扮演演员,在另一部电影中扮演制片人,所以我不能在CastAndCrew表中的条目中定义这一点,因为这只适用于一部电影,对于他们拍摄

  • 问题内容: 我有一张表,我需要在一个语句中计算两个具有不同条件的聚合函数。我怎样才能做到这一点? 伪代码如下: 问题答案: 这与tombom的答案相同,但是具有SQL Server语法:

  • 问题内容: 我写了这个查询: 返回结果: 这正是我想要的结果。我的问题是,“援助”中不会总是有四个不同的值。是否可以重写此查询(或使用存储过程),以使“ a *”列的数量取决于“援助”中有多少个不同的值? 问题答案: 您将需要使用“动态数据透视表”来获取所需的列列表。这将首先检索列的列表,然后旋转该列表。类似于以下内容:

  • 我有一个问题,正在寻找一个很好的解决方案。 我有这些db表: 游戏对象 游戏对象属性 游戏\对象\游戏\对象\属性(轴) 游戏对象。php: GameObjectAttribute.php: 现在,我试图获得所有GameObjectType的GameObject,并用透视列值过滤结果。 我在这里使用了一个连接,但是有没有办法用雄辩的关系来做呢? 这将返回给我所有“军队”类型的游戏对象: “game

  • 问题内容: 我的应用程序中有2个过滤器。根据某些条件,我想选择是否执行第二个过滤器。有没有办法做到这一点? 我做了一些谷歌搜索,但没有成功。我希望请求继续执行而不执行第二个过滤器。那可能吗? 任何帮助将不胜感激。 问题答案: 您可以在请求中设置一个属性,然后在第二个过滤器中对其进行检查。 您可以像这样简化上面的代码: 这样,您只需检查属性“ executeSecondFilter”的存在

  • 问题内容: 我在下面的表A中,对于每个唯一的ID,都有三个带有某些值的代码。 我有第二个表B,其格式如下: 每个唯一ID仅一行。我想为第一个表中的每个ID填充第一个表A中的第二个表B。 对于上面的第一个表A,第二个表B应该显示为: 如何在单个SQL查询中实现此目标? 问题答案: 如果您的版本没有,您也可以使用以下命令: (在我的V6R1 DB2实例上工作,并有一个SQL Fiddle示例)。