小技集

トップ > 小技集 > 記事
小技集一覧へ
限定コンテンツ一覧へ



2023年7月12日【ID:0】

メンバー限定

【Excel】最も頻繁に出現する値を抽出


こちらでは、最も頻繁に出現する値の抽出方法について、以下の3パターンで解説していきます。

1.数値の場合
2.文字の場合(1文字)
3.文字の場合(2文字以上)

最頻値を求める関数は以下の2つになります。

=MODE.SNGL(数値1, [数値2], …)
// 選択した値の中で最も出現頻度の高い値を抽出
// 複数件見つかった場合は、範囲の先頭にある数値が優先される
=MODE.MULT(数値1, [数値2], …)
// 選択した値の中で最も出現頻度の高い値を抽出
// 複数件見つかった場合は、配列で返す

①数値の場合

数値の場合は、関数そのものの機能になるため、以下のように抽出できます。

=MODE.SNGL(B2:B10)

複数件見つかった場合は、以下のようになります。

=MODE.SNGL(H2:H9)
=MODE.MULT(H2:H9)

MODE.MULT関数に関しては、スピルに対応していない場合は配列数式にする必要があります。
配列数式は、表示される可能性がある件数分の範囲を選択した後に数式を入力し、確定時はEnterではなく「Ctrl+Shift+Enter」で行います。

数式バーを確認すると、入力した数式に「{}」が追加されて表示されます。
これが配列数式になります。

配列数式の場合は、表示させる件数が選択したセルの数より少ない場合、エラー(#N/A)が表示されます。
また、配列数式を削除する場合は、対象の範囲全てを選択してからDeleteキーを押します。
入力した単体のセルのみでは削除できないため、削除する際は注意する必要があります。

こちらの内容以降に関しては、スピルに対応したExcel向けに解説していきます。
対応していない場合は、必要に応じて配列数式を活用することで同じことが実現できます。

ExcelVBAレベル確認

①補足

複数列を指定している場合は、以下の順番で抽出対象が優先されます。


②文字の場合(1文字)

MODE.SNGL関数とMODE.MULT関数は数値のみに対応しています。
そのため、文字で求めたい場合は、文字を数値にして行う必要があります。

文字が1文字の場合は、CODE関数とCHAR関数が使えます。

=CODE(文字列)
// 文字列の先頭の文字の文字コードを返す
=CHAR(数値)
// 文字コード(数値)に対応する文字を返す

CODE関数で、対象の範囲を文字コードの配列にし、その配列に対して最頻値を求め、その結果をCHAR関数により文字に戻すことで抽出できます。

=CHAR(MODE.SNGL(CODE(B2:B10)))
=CHAR(MODE.MULT(CODE(B2:B10)))
③文字の場合(2文字以上)

最後に複数の文字の場合です。
先ほどのCODE関数やCHAR関数は1文字の場合のみに対応しています。
複数の文字の場合は、同じ文字を同じ数字に置き換える必要があります。


続きはIT予備メンバー限定です。

メンバー限定コンテンツになります。




IT予備メンバーページと連携することで内容を確認することができます。

メンバーとは


すでにメンバーの方は、
ログインして連携してから、こちらを更新すると閲覧できます。
※連携しても確認ができない場合は、少し時間を置いてご確認ください。

ログイン(新しいタブ)
※[ログイン]→[設定]→[IT予備-連携]で連携できます


パソコンで開く場合は、記事の最後に「リンクコピー」があるためご活用ください。


メンバー募集
ExcelVBA学習ロードマップ配布 ExcelVBA学習ロードマップ配布





リンクの共有はこちらから行えます。

  リンクコピー Twitter Facebook はてなブックマーク Pocket
トップ > 小技集 > 記事
小技集一覧へ
限定コンテンツ一覧へ


- 人気の記事 -



- メンバー限定 [一覧] -



サイト累計閲覧数

4971388

有料動画講座
(買い切り)

Excel完全制覇


ちょっとした機能 便利ツール
【小技集】

【Excel】カテゴリー単位で交互に色付け

【ExcelVBA】データ変更と同時にピボットテーブルを自動更新

【Excel】FILTER関数で存在しない場合に好みのデータを表示

【Excel】グラフにデータを瞬時に追加(離れている範囲でもOK)

【Excel】「Ctrl+A」の別の活用例

【Excel】TRUEとFALSEを理解する

【Excel】カレンダーに「休」を表示(祝日などを考慮)

【ExcelVBA】選択した値の関連データを自動で抽出

【Excel】分表記を時刻表記(時:分)に変換

【Excel】絵グラフを瞬時に作成

【Excel】シフト表への入力を爆速にする

【Excel】軸の異なる表を瞬時に作成

【Excel】価格の下三桁を480円または980円にする

【ExcelVBA】カテゴリー単位でセルを自動結合

【ExcelVBA】VBAを使ってシートの初期設定を自動化

【ExcelVBA】不要なシートの見出しの色を自動変更

【Excel】初回購入日と直近購入日を抽出

【Excel】特定の項目が特定の値の場合に行全体を色付け

【Excel】指定したセルを別のセルの間に移動する

【Excel】締め日を考慮したカレンダーの作成方法

【ExcelVBA】削除したデータを別シートに記録

【Excel】セル参照や数式に名前を付ける「LET関数」

【Excel】複数の目標値を自動で計算「ソルバー」

【Excel】FILTER関数で必要な項目のみを抽出

【Excel】ドロップダウンリストで複数選択可能にする





一覧ページへ

トップ > 小技集 > 記事
小技集一覧へ
限定コンテンツ一覧へ

メンバーに加入すると
多くの特典が得られます

・全作品ダウンロード
・コンテンツ閲覧管理
・チャットサポート


 詳しくはこちら 

閉じる

※メンバーページと連携すると
表示されなくなります