スコアシートを保持するためにExcel2003(企業ポリシーによりバージョンが制限されています)を使用しています。
_ A B C D
1 Round | Rita | Sue | Bob
------+------+-----+-----
2 1 | 5 | 3 | 4
3 2 | 2 | 2 | 5
4 3 | 3 | 1 | 3
_
私が望んでいるのは、一人一人が合計で勝ちラウンドを持ち、両方に同点が与えられることです。したがって、行全体は次のようになります。
_ -------+------+-----+-----
5 Total | 2 | 0 | 2
_
これは、1つの数式で合計で可能ですか?
CountIf
とMax
の組み合わせを試しましたが、目的の出力が得られません。
私の他の唯一の解決策は、スコア列の個別のセットを用意することです。たとえば、ラウンドごとにIF(B2=MAX(B2:D2),1,0)
を作成し、各人についてこれらを合計します。
EDIT:明確にするために、列を追加するソリューションがあります。私は、式(e)を既存の各人物列に追加して、余分な列を追加せずに合計を計算できるソリューションを求めています。
D5にコピーされたB5でこの式を試してみてください。これにより、_Rita, Sue and Bob too
_の合計が得られます。
=SUMPRODUCT((SUBTOTAL(4,OFFSET($B$2:$D$4,ROW($B$2:$D$4)-ROW(B$2),0,1))=B2:B4)+0)
このソリューションは、より広い範囲に簡単に拡張できます。つまり、より多くの行または列を使用できます。
[OFFSET
は各行を個別の範囲として抽出し、最初の引数4を指定したSUBTOTAL
は各範囲のMAX
を検索します.....]
式「」を使用して、BOBの横に新しい列を追加します
=MAX(B2,C2,D2)
合計セルには、次のように入力します
=SUM(IF(B2=$E2,1,0),IF(B3=$E3,1,0),IF(B4=$E4,1,0))
[〜#〜] note [〜#〜]:すべての数式は、セルRound
がA1
であるという仮定に基づいています。
(これもOffice 2010で試したので、2003年に正確な機能が利用できるかどうかはわかりません。
[〜#〜]編集[〜#〜]
余分な列が必要ない場合は、この方法で2つの数式を組み合わせることができます
=SUM(IF(B2=MAX(B2,C2,D2),1,0),IF(B3=MAX(B3,C3,D3),1,0), and so on )