1

在 D&E 列中,我有一个游戏得分列表,其中 D 是得分,E 是反对得分,就像这样

D    E
1    3
4    2
3    3
3    1

我正在尝试创建一个公式,根据 D 列是否大于、等于或小于 E 列来显示赢/平/输记录。在此示例中,它将显示2 / 1 / 1.

到目前为止我有这个

=(SUMPRODUCT(--(D12:D200>E12:E200)))&" / "&SUMPRODUCT(--(D12:D200=E12:E200))&" / "&(SUMPRODUCT(--(D12:D200<E12:E200)))

但是有两个问题。一是所有空白行都被计算为相等,因此结果为2 / 186 / 1.

第二个是在另一列中,我有一个星期几的列表,我希望能够按天过滤掉行并让结果反映这一点。我有不同的公式使用SUBTOTAL而不是SUM计算总点数,效果很好。但我不知道我需要对我的公式进行什么等效更改。任何帮助,将不胜感激。

4

1 回答 1

1

至于您的第一个问题,您的公式确实考虑了空白并将它们视为平等。您可以调整中间SUMPRODUCT公式以省略空格,就像这样:

=SUMPRODUCT(ISNUMBER(D12:D200)*(--(D12:D200=E12:E200)))

在此处输入图像描述

第二个问题是关于按星期几过滤行。这是应用“日”过滤器之前的视图 - 如您所见,我们有 5 胜(蓝色)、4 平(橙色)和 3 负(绿色)。

在此处输入图像描述

您需要使用以下公式进行SUMPRODUCT动态化(即它会对过滤行做出反应):

=SUMPRODUCT(SUBTOTAL(3,OFFSET(F12:F200,ROW(F12:F200)-ROW(F12),,1)),--(D12:D200>E12:E200))&" / "&SUMPRODUCT(SUBTOTAL(3,OFFSET(F12:F200,ROW(F12:F200)-ROW(F12),,1)),ISNUMBER(D12:D200)*(--(D12:D200=E12:E200)))&" / "&SUMPRODUCT(SUBTOTAL(3,OFFSET(F12:F200,ROW(F12:F200)-ROW(F12),,1)),--(D12:D200<E12:E200))

这是星期一的结果:

在此处输入图像描述

于 2020-01-09T15:07:33.577 回答