KutoolsforOffice— 1 つのソリューション、5 つの強力なツール。少ない労力で大きな成果。

セルからリストの最初の値を取得する

著者Amanda Li変更日

特定のセルに複数の値のいずれかが含まれている場合、そのセルから範囲内にリストされている最初のキーワードを取得するには、INDEXMATCH、ISNUMBER、およびSEARCH 関数を組み合わせたやや複雑な配列数式が必要です。

セルから最初のリスト値を取得 1

セルからリストの最初の値を取得するには、どうすればよいですか?

上記のように、セルに含まれるキーワード列と最初に一致した対応するキーワードを取得するには、完全一致ではなく部分一致を行う必要があります。そのためには、ISNUMBER 関数と SEARCH 関数を組み合わせて TRUE/FALSE の配列を作成し、MATCH 関数で最初の TRUE の位置を特定します。その後、その位置番号を INDEX 関数に渡して該当する値を取得します。

一般的な構文

=INDEX()keyword_rng,MATCH(TRUE,ISNUMBER(SEARCH()))keyword_rng,lookup_cell)),0))

√ 注:これは配列数式であるため、入力後にCtrl+Shift+Enterを押す必要があります。

  • keyword_rng:キーワードを含むセルの範囲。
  • lookup_cell:キーワードを含むかどうかを調べるセル。

セル B5 からキーワードリストで最初に見つかった一致項目を取得するには、以下の数式をセル C5 にコピーまたは入力し、Ctrl+Shift+Enterを押して結果を取得してください:

=INDEX()($E$5:$E$7),MATCH(TRUE,ISNUMBER(SEARCH()))($E$5:$E$7),B5)),0))

√ 注:上記のドル記号($)は絶対参照を示しており、数式を他のセルに移動またはコピーしてもkeyword_rngが変更されないことを意味します。一方、lookup_cellにはドル記号が付加されていないため、この参照は相対的(動的)になります。数式を入力後、フィルハンドルを下にドラッグして下のセルにも適用してください。

セルから最初のリスト値を取得 2

数式の説明

=INDEX(($E$5:$E$7,))MATCH(TRUE,)ISNUMBER()SEARCH($E$5:$E$7,B5)),0))

  • SEARCH($E$5:$E$7,B5):SEARCH 関数は、範囲 $E$5:$E$7 内でキーワードの位置を数値で返します。見つからない場合は#VALUE!エラーが返されます。その結果は次のような配列になります:{15;11;#VALUE!}
  • ISNUMBER()SEARCH($E$5:$E$7,B5))=ISNUMBER(){15;11;#VALUE!}):ISNUMBER 関数は、配列内の数値を TRUE に、#VALUE!エラーを FALSE に変換します。その結果は次のとおりです:{TRUE;TRUE;FALSE}
  • MATCH(TRUE,)ISNUMBER()SEARCH($E$5:$E$7,B5)),0)=MATCH(TRUE,){TRUE;TRUE;FALSE},0): 引数 match_type 0により、MATCH 関数は完全一致を実行し、配列 {TRUE;TRUE;FALSE}内で最初に見つかる TRUE の位置を返します。そのため、この関数は1を返します。
  • INDEX(($E$5:$E$7,))MATCH(TRUE,)ISNUMBER()SEARCH($E$5:$E$7,B5)),0)) = INDEX(($E$5:$E$7,)1):INDEX 関数は、指定された範囲の1 番目の値を返します。この例では、その値は$E$5:$E$7 内のAAAです。

備考

  • セルに2 つ以上のキーワードが含まれている場合、この数式はキーワード範囲にリストされた最初のキーワードを返します。
  • この数式は大文字と小文字を区別しません。大文字と小文字を区別して一致させたい場合は、SEARCH 関数を FIND 関数に置き換えてください。
  • キーワードリストをハードコードされた文字列(例:{“AAA”})の配列定数に置き換えることもできます。これにより、セルにその文字列が含まれているかどうかだけを確認できます。

関連関数

Excel INDEX 関数

Excel の INDEX 関数は、指定された範囲または配列から値を返します。

Excel MATCH 関数

Excel の MATCH 関数は、指定したセル範囲内で特定の値を検索し、その相対位置を返します。

Excel SEARCH 関数

Excel では、SEARCH 関数を使って、指定されたテキスト文字列内にある特定の文字や部分文字列の位置を検索できます(下記スクリーンショット参照)。このチュートリアルでは、Excel で SEARCH 関数を活用する方法をご紹介します。


関連数式

セル内のリストと最初に一致した値を取得する

キーワードのリストがある場合、特定のセルに含まれる複数の値のうち最初に出現するキーワードを取得するには、INDEX 関数を AGGREGATE 関数および SEARCH 関数と組み合わせて使用します。

INDEX 関数と MATCH 関数による完全一致

Excel で特定の製品、映画、人物などの情報を素早く見つけたいなら、INDEX 関数と MATCH 関数を組み合わせるのが効果的です。

セルに特定のテキストが含まれているか確認する

このチュートリアルでは、セルに特定のテキストが含まれているかどうかを確認し、TRUE または FALSE を返す数式をご紹介します(下記のスクリーンショット参照)。また、その数式の引数と動作についても詳しく説明します。

セルに複数の項目すべてが含まれているか確認する

Excel で列 E に値のリストがあり、列 B のセルに列 E のすべての値が含まれているかどうかを確認し、TRUE または FALSE を返したい場合(下記のスクリーンショットを参照)、このチュートリアルで紹介する数式をご利用いただけます。

セルに複数の項目のいずれかが含まれているか確認する

このチュートリアルでは、Excel でセルに複数の値のいずれかが含まれているかを確認する数式を紹介し、その引数と動作を詳しく解説します。


最高の Office 生産性ツール

Kutools for Excel - あなたを群衆の中から際立たせます

🤖KUTOOLS AI アシスト:次に基づいてデータ分析を革新します:インテリジェント実行     コード生成  カスタム数式作成    データ分析とチャート生成  拡張機能呼び出し
人気機能検索・ハイライト・重複をマーキング    空白行を削除する    データを失うことなく列の結合またはセルを    数式を使用しない四捨五入...
スーパー VLookup複数条件    複数値    複数シート間    ファジーマッチ...
高度なドロップダウンリスト簡単なドロップダウンリスト    連動型ドロップダウンリスト    複数選択可能なドロップダウンリスト...
列マネージャー指定した数の列を追加    列の移動   非表示列の表示状態を切り替え  列を比較して同じ/異なるセルを選択...
注目の機能グリッドフォーカス    デザインビュー    強化された数式バー    ワークブックとシートマネージャーリソースライブラリ(オートテキスト)  日付ピッカー    ワークシートの統合    暗号化/セルの復号化   リストからメール送信    スーパーフィルター    特殊フィルタ(太字のフォントを持つセルをフィルタリング/イタリック/取り消し線。。。) 。。。
トップ15 ツールセット12 テキストツールテキストの追加特定の文字を削除...)  50+チャートタイプガントチャート...)  40+実用的な数式誕生日に基づいて年齢を計算します...)  19 挿入ツールQR コードを挿入パスから画像を挿入...)  12 変換ツール単語に変換する為替レートの変換...)  7 結合と分割ツール高度な行のマージExcel セルを分割...)。。。他にも多数
Kutools を好みの言語でお使いいただけます。英語、スペイン語、ドイツ語、フランス語、中国語、および40+言語以上をサポートしています!

Kutools for Excel は300 以上の機能を備えており、必要な機能が常にワンクリックで利用できます…


Office Tab - Microsoft Office(Excel を含む)でタブを使った閲覧・編集を可能にします

  • 数十もの開いているドキュメントを1 秒で切り替えられます!
  • 毎日何百回ものマウスクリックを削減して、マウス手の悩みともさよならしましょう。
  • 複数のドキュメントを閲覧・編集する際の生産性が50%も向上します。
  • Office(Excel を含む)に、Chrome、Edge、Firefox のような効率的なタブ機能をもたらします。