手入力なダブルス表をデータ化する為、重複しないよう組合せをチェックしたい。【Excel講座】

ある時は

「A」と「B」対「C」と「D」

またある時は

「B」と「A」対「D」と「C」

紙でもデータでもこのように集計した場合

AもしくはBペアがCもしくはDペアと戦った戦績を残すのは大変です。

ABvsCD 勝AB 負CD
BAvsDC 勝BA 負DC

というようにAとBのペアで合計2勝していても集計データ的には1勝ずつになってしまい、集計に工夫が必要となります。

でも難しいんですよね、人数が増える程組合せも爆発的に増えます。

ちなみに組合せを確認したい場合の関数は

COMBIN(総数,組合せ数)

で、可能です。総数10人でダブルスなら…

COMBIN(10,2)

こうですね。結果は10人なら45通り。

20人なら190通り、
30人なら435通り、
40人なら780通り…。

もう手入力集計では追いつきませんね。

ここで重複チェックする為に使用したのは関数ではなく計算。

目的は

① 1-2や2-1など同じ組み合わせの場合は同じ結果であること
② 違う組み合わせの場合は必ず違う結果であること

ここから加算乗算する場合xとyは同じ数だけ使わなければならないこと
…を前提に考えたのが

X^2 × Y^2 + X + Y

X^2*Y^2+X+Y

200通りのダブルスの組み合わせは19,900通り。
1から200まで全ての組み合わせを入力した状態で重複チェック。

重複せず。

1から順のみの場合で考えれば
「二乗同士を掛けた数」だったら重複が存在します、例えば

1と6の組み合わせなら1×1×6×6で36ですが2×2×3×3も36です。

しかしここに元の数を加算すると

1×1×6×6+1+6で43、2×2×3×3+2+3で41となり重複しなくなります。

そして1と6に対して6と1のような同じ組み合わせの場合

1×1×6×6+1+6で43、6×6×1×1+6+1で43となり

どちらを先に計算しようが結果は同じになります。

注意
1-1や50-50など同じ数同士も残ってしまうので先に
X=YでTRUEのものは削除しておきましょう。

マクロや関数だけではなく計算式も組み込み便利に使いましょう🌱

ではでは。

コメント