重複に注意しながら、2つの列で同一の値を数える

重複に注意しながら、2つの列で同一の値を数える

Excelに2列のデータがあるとします

a   a
b   d
c   x
d   b
b   d

2つの列の一致数を求める必要がありますが、一意の一致のみを数えます。例では、答えは3で、aが1つ、bが1つ(2つではありません!)、dが1つ(これも2つではありません!)です。私は試しました。

=SUMPRODUCT(--(ISNUMBER(MATCH(A:A,B:B,0))))

しかし、b は 2 回カウントされます (逆にすると d になります)。

答え1

問題はさらに複雑であることが判明しました。

a a
b d
c x
d b
b d
a a

これは4を返すはずです。なぜなら、aは2回一致し、bとdはそれぞれ1回一致するからです。これを1つの式でどうやったらできるのかまだわかりませんが、

=IF(COUNTIF($A$1:A1,A1)=1,MIN(COUNTIF(A:A,A1),COUNTIF(B:B,A1)),0)

次の列で、それを下に引いて合計すると、今のところ「十分」解決しました。

関連情報