Excel - 如何从一张工作表中提取数据并在另一张工作表上按日期列出/计数?

Excel - 如何从一张工作表中提取数据并在另一张工作表上按日期列出/计数?

在我的主表上,每行在“A”列中都有一个日期字段,在“B”列中有一个下拉菜单,其中包含 4 个选项中的 1 个(例如:“猫”,“狗”,“牛”,“猪”)。

我想做的是设置一个新工作表,该工作表将从主工作表中提取数据。“A”列是日期字段,“B”列是猫,“C”是狗,“D”是牛,“E”是猪。每行将列出主工作表中的日期,然后给出猫/狗/牛/猪选项的每个实例的计数。

关于如何设置,您有什么想法吗?下面的第一个屏幕截图显示了主要工作表数据的样子,第二个屏幕截图显示了我希望的新工作表计算的样子。

主要板材示例:

在此处输入图片描述

新工作表示例:

在此处输入图片描述

答案1

这是一个典型的用例数据透视表

我已经设置了Google 表格中的电子表格为您演示了这一概念。您可以将工作表下载为 .xls 或 .xlsx,它应该会忠实地将数据透视表转换为 Excel 格式。

只需查看“数据透视表 1”工作表。它正确使用函数COUNTA()来汇总数据。最好的部分是列和行是根据输入数据动态生成的,并且不依赖于输入数据是否正确排序。

您也可以使用工作表函数来执行此操作,但如果不使用数据透视表,就很难复制数据透视表的所有细节:

  • 为原始 B 列中的每个唯一值自动创建列。如果不使用数据透视表,这是非常困难的否则可能需要 VBA 代码。
  • 系统会为每个唯一日期自动创建行,并且您可以在不更改源数据的情况下自定义对数据透视表中的行进行排序。
  • 如果您要将基于字符串的值(“Cow”、“Cat”)更改为数值(7、16、556),则可以将数据透视表中的聚合函数从更改为,COUNTA然后SUM非常轻松地对数据进行求和,而不是对其进行计数。如果您使用工作表函数手动重现数据透视表的功能,则此更改将不那么简单。

总体而言,没有充分的理由不是当数据透视表可以解决问题时,您最好不要使用数据透视表,因此您应该学习如何使用它们。工作表函数是解决此问题的错误方法。


以下是在 Excel 2016 中操作方法的演示(单击图像可将其放大):

在此处输入图片描述

无关地,如果你喜欢这个 GIF 并且想知道我是如何做到的,我使用了免费工具ScreenToGif

相关内容