在我的公司,我们为每个报告和我们发布的文件预订序列号。这些是通过在一列(A)中输入您的名字然后在另一列(B,格式化的dd / mm / yyyy)中添加日期来预订的。我看起来如下:
(A) (B)
Initials Date
A. Mustermann 16.03.2016
B. Mustermann 17.03.2016
根据使用的类型,有很多种数字,每月需要完全分解哪种类型的序列号及其数量。我已将其移植到另一张纸上的表格中,并且只需要一种方法来读取纸张并打印相应的数字。像这样;
(A) (B) (C)
Serial 1 Serial 2 etc…
A. Mustermann
B. Mustermann
理想情况下,这应避免使用宏,因为许多人在不同的软件版本上使用此文件。我尝试使用CountIfs函数并使用Month函数绘制月份的数字并将其与set字段中的数字相匹配,这样您只需更改该字段即可更新统计数据。
我尝试使用:COUNTIFS('Sheet1'!A:A;A29;Month('Sheet1'!B4:B500);V2)
如果sheet1是初始的序列日志表,则A29是统计页面上的样本字符串,其确实出现在A:A范围内,V2是月份数字,即3月份的3。我想知道A.Mustermann在3月份推出了多少次串行类型1。这就是这项任务的目的。上述功能确实识别所有输入,即范围,甚至能够识别每个日期的月份,但由于某种原因,它无法将这两个数字匹配在一起并获得最终答案。
我感谢所有人的帮助。
谢谢
答案 0 :(得分:2)
尝试以下sumproduct公式。它基本上是计算A列中某些内容出现的次数,而同时B列中有不同标准的匹配。
=SUMPRODUCT(--($A$2:$A$9=F2)*--(MONTH($B$2:$B$9)=G2))
作为标准检查的公式部分发生在 -
之后的括号内 ($A$2:$A$9=F2)
我们使用 - 将得到的真假结果转换为数字1或0。
*完成AND语句的工作。因此,只要它们各自用*分隔,并且 - ()中的部分计算为true或false,就可以实际进行多次检查。最后一个问题是范围必须相等。
因此在上面的示例A2中:A9是包含名称的范围,B2:B9是包含日期的范围,如第一个示例数据中所示。 F2是我正在检查匹配的名称的单元格,而单元格G2是包含一个月份匹配的数字的单元格。
(A) (B)
(1) Initials Date
(2) A. Mustermann 16/03/16
(3) B. Mustermann 16/03/17
(4) A. Mustermann 16/03/18
(5) B. Mustermann 16/04/19
(6) A. Mustermann 16/03/20
(7) B. Mustermann 16/03/16
(8) A. Mustermann 16/05/22
(9) B. Mustermann 16/03/16
(F) (G)
(1) name Month
(2) A. Mustermann 3
我遇到的问题是基于您的问题,序列1如何适用于所有问题。现在,上面的等式只计算列a中名称与其名称旁边的匹配月份的次数。希望这会指出你正确的方向。