• ベストアンサー

セルに文字が入っていますが、一番多い文字を表示させたい。

セルに英文字が入っています。 例えば A1セル⇒C A2セル⇒D A3セル⇒A A4セル⇒C ~ A100セル⇒A など A1セルからA100セルに入っている英文字のうち、 一番数の多い英文字をA101セルに表示させるには どうしたら良いでしょうか?

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

  • ベストアンサー
  • mt2008
  • ベストアンサー率52% (885/1701)
回答No.1

A列のセルに入っているのが半角英数1文字なら、A101に以下の式を入れます。 {=CHAR(MODE(CODE(A1:A100)))} 配列式ですので、「{}」を取った式を入力してCtrl+Shift+Enterで確定してください。 これは、A列の文字をCODEで文字コードに変換して、再頻値をMODEで求め、CHARで文字に再変換しています。

wakasi
質問者

お礼

何回もすみません。 英文字ではなく、2桁の数値ならできますでしょうか? 例えば A1セル⇒11 A2セル⇒15 A3セル⇒19 A4セル⇒11 ~ A100セル⇒19 など

wakasi
質問者

補足

ありがとうございます。 英文字が「NSN」とか「NUP」とか3文字の場合には無理でしょうか?

その他の回答 (1)

  • mt2008
  • ベストアンサー率52% (885/1701)
回答No.2

No.1です。 それでは、数値でも複数文字でも対応できるようにしましょう。 {=INDEX(A1:A100,MATCH(MAX(COUNTIF($A$1:$A$100,A1:A100)),COUNTIF($A$1:$A$100,A1:A100),0))} COUNTIFでA列の値が何回登場するかをカウントし、カウント数が最大な物の位置をMATCHで調べ、その位置の値をINDEXで表示しています。 これも配列式ですので、「{}」を取った式を入力してCtrl+Shift+Enterで確定してください。

関連するQ&A