3

在此处输入图像描述对于使用 2 个单元格的组合的 10 个语句,我有一个非常粗略的解决方法,如下所示

Cell 1 (O2)
=IF(C2="TW2-OUT",VLOOKUP($D2,Players,8,FALSE)+VLOOKUP($D2,Players,9,FALSE),IF(C2="TW2-IN",IF($D2="","",VLOOKUP($D2,Players,10,FALSE)),IF(C2="Playing",IF($D2="","",VLOOKUP($D2,Players,8,FALSE)+VLOOKUP($D2,Players,9,FALSE)+VLOOKUP($D2,Players,10,FALSE)),IF(C2="IN1OUT2",VLOOKUP($D2,Players,9,FALSE)+VLOOKUP($D2,Players,10,FALSE),IF(C2="TW1-OUT",IF($D2="","",VLOOKUP($D2,Players,8,FALSE)),IF(C2="TW1-IN",IF($D2="","",VLOOKUP($D2,Players,9,FALSE)+VLOOKUP($D2,Players,10,FALSE)),IF(C2="TW3-OUT",VLOOKUP($D2,Players,8,FALSE)+VLOOKUP($D2,Players,9,FALSE)+VLOOKUP($D2,Players,10,FALSE),0)))))))+P2

Cell 2 (P2)
 =IF(C2="TW3-IN",IF($D2="","",VLOOKUP($D2,Players,11,FALSE)),IF(C2="IN2OUT3",VLOOKUP($D2,Players,10,FALSE),IF(C2="IN1OUT3",VLOOKUP($D2,Players,9,FALSE)+VLOOKUP($D2,Players,10,FALSE),0)))

有没有更好的方法来做到这一点。我通过 Google 搜索阅读了有关使用带有数组的表格方法来达到相同效果的信息。然而,就我而言,球员的状态决定了球员的得分,这让我的事情变得复杂。以下是 10 种可能的状态(if 语句),按照评分的计算方式细分如下:

TransferStatuses    Cols
Playing             8+9+10+11
TW1-IN              9+10
TW1-OUT             8
TW2-IN              10+11
TW2-OUT             8+9
TW3-IN              11
TW3-OUT             8+9+10
IN1OUT2             9
IN1OUT3             9+10
IN2OUT3             10



8 = ColK (Transfer Window 0)
9 = ColL(Transfer Window 1)
10 = ColM (Transfer Window 2)
11 = ColN(Transfer Window 3)

'score' 数组将如下所示:

=VLOOKUP(C2,$S$2:$T$11,2,FALSE)

问题是我不知道如何将它们放在一起以使其工作,即我必须将我的公式扩展到 300 个单元格,但我不知道如何实现它以便数组正确计算每个单元格的分数玩家?

有人可以帮忙吗?

4

1 回答 1

3

如果我理解正确,我会这样处理:

设置一个二进制值矩阵,为每个状态指定应该添加哪些列。使用OFFSETMATCH查找每个数据行的状态并返回二进制值的数组/范围,并将SUMPRODUCT其全部汇总。看截图:

在此处输入图像描述

于 2012-06-28T22:33:09.300 回答