• ベストアンサー

エクセルで組み合わせの数を調べる方法

B~D列の「ABC」の組み合わせの数を調べるにはどうすればいいでしょうか?(例では2つです)

質問者が選んだベストアンサー

  • ベストアンサー
  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.2

例えば以下のような関数で6つの組み合わせに一致する場合の行の数をカウントできます。 =SUMPRODUCT(({"ABC","ACB","BAC","BCA","CAB","CBA"}=B1:B8&C1:C8&D1:D8)*1)

その他の回答 (5)

  • bunjii
  • ベストアンサー率43% (3589/8249)
回答No.6

回答No.4の見落としを補足します。 質問の文字の並びが回答No.4の時はカウントする条件を以下の3種類と勘違いしています。 A、B、C B、C、A C、A、B 追加条件として以下の3種類があります。 C、B、A B、A、C A、C、B 従って、チェックする組み合わせは合計6種類のパターンになります。 関数式は次のようになります。 =COUNTIFS(B:B,"A",C:C,"B",D:D,"C")+COUNTIFS(B:B,"B",C:C,"C",D:D,"A")+COUNTIFS(B:B,"C",C:C,"A",D:D,"B")+COUNTIFS(B:B,"C",C:C,"B",D:D,"A")+COUNTIFS(B:B,"B",C:C,"A",D:D,"C")+COUNTIFS(B:B,"A",C:C,"C",D:D,"B")

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.5

こんばんは! 色々回答は出ていますが・・・ 作業用の列を1列使う方法はどうでしょうか? E列を作業列とすると E1セルに =IF(AND(COUNTIF(B1:D1,{"A","B","C"})),1,0) という数式を入れオートフィルで下へコピー! 最後に表示したいセルに =SUM(E:E) とすればお望みの結果が表示されると思います。 ※ VBAでよいのであれば一気に表示することも可能ですが、 今回はこの程度で m(_ _)m

  • bunjii
  • ベストアンサー率43% (3589/8249)
回答No.4

>B~D列の「ABC」の組み合わせの数を調べるにはどうすればいいでしょうか? >説明不足でしたが、「ABC」の組み合わせ(順不同)がある行数です "A"、"B"、”C"の文字が順不同と言うことになると組み合わせが3組です。 従って、次の式が順当かと思います。 =COUNTIFS(B:B,"A",C:C,"B",D:D,"C")+COUNTIFS(B:B,"B",C:C,"C",D:D,"A")+COUNTIFS(B:B,"C",C:C,"A",D:D,"B")

回答No.3

もし組み合わせの要素が7つ8つ・・・と増える可能性がある時は以下の方法もいかがでしょうか? (1)E1に「=CONCATENATE(B1,C1,D1)」を入力、E8までコピペ(要素を結合) (2)F1に「=LEN($E1)-LEN(SUBSTITUTE($E1,"A",""))」を入力、F8までコピペ(Aの数をカウント) (3)G1に「=LEN($E1)-LEN(SUBSTITUTE($E1,"B",""))」を入力、G8までコピペ(Bの数をカウント) (4)H1に「=LEN($E1)-LEN(SUBSTITUTE($E1,"C",""))」を入力、H8までコピペ(Cの数をカウント) (5)I1に「=SUM(F1:H1)」を入力、I8までコピペ 各要素が1ずつあった場合はI列の数字が3になります。

回答No.1

=AND(COUNTIF(B1:D1,"A")=1,COUNTIF(B1:D1,"B")=1,COUNTIF(B1:D1,"C")=1) でTRUEの数をカウント。

KIKAIDER01
質問者

補足

説明不足でしたが、「ABC」の組み合わせ(順不同)がある行数です(例では1行目と8行目の2つ)。ご教示の数式では1行目しか見ていないのではないでしょうか。