Excel - 行と列を比較して一致する項目を数える

Excel - 行と列を比較して一致する項目を数える

一連のデータセットの類似性を比較しようとしています...

20 個の値 (1 ~ 20 の番号が付けられている) の列と、それに対応する 20 個の値 (これも 1 ~ 20 の番号が付けられている) の行があります。

列はマトリックス グリッドの上部に、行は側面に沿って配置されます。

列の値のうち、行の値と同じ(対応する位置も同じ)値がいくつあるかを数えたいと思います。

3 x 3 (20 x 20 グリッドではなく) の出力は次のようになります。

          Cols 
          A B C
          1 3 1
          2 2 3
          3 1 1
rows     ______
A 1 2 3 | 3 1 1
B 3 2 1 | 1 3 0
C 1 3 1 | 1 0 3

20 メガネストされた計算 (例: =IF(C7=F3,1+IF(... など)) なしで、どの INDEX / MATCH / ARRAY 関数でこれを実行できますか?

答え1

次の配列数式でこれを実現できます。

=SUM(IF(D$1:D$3=TRANSPOSE($A4:$C4), 1, 0))

範囲内の各セルを比較し、同一のセルの合計に 1 を加算します。このTRANSPOSE関数は、行を列に変換して比較できるようにするために使用されます。

スクリーンショット

これは配列数式なので、Ctrl+ Shift+を使って入力する必要があることに注意してくださいEnter。数式を左上のセルに入力し (D4スクリーンショットでは )、Ctrl+ Shift+を押してEnter、残りのセルにコピーします。

関連情報