メインコンテンツへスキップ

1つのセルでコンマで区切られた複数の検索値を返すにはどうすればよいですか?

Author: Xiaoyang Last Modified: 2025-08-06

Excelでデータを扱う際、特定の検索条件に基づいて複数の一致する値を返し、それらをコンマやダッシュなどで区切って1つのセルに表示する必要がある状況に遭遇することがあります。Excelの組み込み検索関数である「VLOOKUP」や「INDEX-MATCH」は単一の一致を見つけるのに優れていますが、複数の結果を1つのセルに結合するにはさらに高度なアプローチが必要です。この記事では、Excelでこのタスクを解決するための便利な方法をいくつか紹介します。


TEXTJOINとFILTER関数を使用して、コンマで区切られた複数の検索値を1つのセルに返す

Excel 365またはExcel 2021以降のバージョンを利用できる場合、動的配列数式を使用するのが最も簡単な方法です。

結果を出力するための空白セルに以下の数式を適用し、「Enter」キーを押して結果を得てください。

=TEXTJOIN(", ", TRUE, FILTER($B$2:$B$15, $A$2:$A$15=D2))

次に、フィルハンドルを下にドラッグして数式を他のセルにコピーしてください。スクリーンショットをご覧ください:

return multiple lookup values separate by comma with textjoin function

この数式の説明:
  • FILTER(B2:B15, A2:A15=D2): 列AがセルD2と等しい場合、列Bからすべての値を抽出します。
  • TEXTJOIN(", ", TRUE, ...): 抽出された値をコンマで区切った1つの文字列に結合します。

Kutools for Excelを使用して、コンマで区切られた複数の検索値を1つのセルに返す

「Kutools for Excel」は、Excelでの複雑なタスクを簡素化するために設計されたアドインです。その高度な「一対多の検索」機能により、複雑な数式やVBAコードを書くことなく、指定した区切り文字を使ってすべての一致する値を1つのセルに簡単に抽出できます。

Kutools for Excelは、300以上の高度な機能を提供し、複雑なタスクを簡素化し、創造性と効率を向上させます。 AI機能と統合され、Kutoolsは正確にタスクを自動化し、データ管理を容易にします。Kutools for Excelの詳細情報...無料トライアル...

Kutools for Excelをインストール後、次の手順を行ってください:

「Kutools」>「スーパーLOOKUP」>「一対多の検索(複数の結果を返す)」をクリックしてダイアログボックスを開きます。ダイアログボックスで、以下のように操作を指定してください:

  1. 「出力先」と「検索値」をそれぞれテキストボックスに入力します;
  2. 使用したいテーブル範囲を選択します;
  3. 「キーカラム」と「返却列」のドロップダウンメニューからそれぞれキーカラムと返却列を指定します;
  4. 最後に、「OK」ボタンをクリックします。
    specify the options in the dialog box of kutools

結果:

同じ値を持つすべての対応するセルがコンマで区切られて1つのセルに結合されました。スクリーンショットをご覧ください:
return multiple lookup values separate by comma with kutools

ヒント: データを区切る別の区切り文字を使用したい場合は、「オプション」をクリックして希望の区切り文字を選択できます。また、結果に対して合計や平均などの他の操作を行うこともできます。
more options of one to many lookup feature

ユーザー定義関数を使用して、コンマで区切られた複数の検索値を1つのセルに返す

Excel 365やExcel 2021をお持ちでない場合、このセクションではUDFを作成して使用し、複数の検索値をコンマで区切って1つのセルに返す方法をステップバイステップで説明します。

1. 「ALT」+「F11」キーを押して「Microsoft Visual Basic for Applications」ウィンドウを開きます。

2. 「挿入」>「モジュール」をクリックし、以下のコードをモジュールウィンドウに貼り付けます。

VBAコード: 複数の検索値をコンマで区切って1つのセルに返す

Function JoinLookupValues(lookupValue As String, lookupRange As Range, returnRange As Range, delimiter As String) As String
    'Updateby Extendoffice
    Dim result As String
    Dim i As Long
    result = ""
    For i = 1 To lookupRange.Rows.Count
        If lookupRange.Cells(i, 1).Value = lookupValue Then
            result = result & returnRange.Cells(i, 1).Value & delimiter
        End If
    Next i
    If Len(result) > 0 Then
        JoinLookupValues = Left(result, Len(result) - Len(delimiter))
    Else
        JoinLookupValues = ""
    End If
End Function

3. このコードを保存し、モジュールウィンドウを閉じてワークシートに戻ります。結果を返したい空白セルに以下の数式を入力します。次に、フィルハンドルを下にドラッグして数式を他のセルにコピーしてください。スクリーンショットをご覧ください:

=JoinLookupValues(D2, $A$2:$A$15, $B$2:$B$15, ", ")

more options of one to many lookup feature

注意: 上記の数式において、「D2」はvlookupしたい基準であり、「A2:A15」は検索が行われる範囲、「B2:B15」は返される値の範囲、", "は結果を区切る区切り文字です。

結論として、Excelのバージョンやニーズに応じて、さまざまな方法で効率的に1つのセル内でコンマで区切られた複数の検索値を返すことができます。要件に最適な方法を選択することで、データ分析を合理化し、生産性を向上させることができます。さらに多くのExcelのヒントやコツについて興味がある方は、当サイトで数千ものチュートリアルを提供しています


関連記事:

  • 重複なしで複数の値をVlookupして返す
  • Excelでデータを扱う際、特定の検索条件に基づいて複数の一致する値を返す必要がある場合があります。しかし、デフォルトのVLOOKUP関数は単一の値しか取得できません。複数の一致が存在し、それらを重複なしで1つのセルに表示したい場合、代替方法を使用してこれを実現できます。
  • 1つまたは複数の基準に基づいて複数の一致する値を返す
  • 通常、特定の値を検索して一致する項目を返すのは、VLOOKUP関数を使用すればほとんどの人にとって簡単です。しかし、次のスクリーンショットのように、1つまたは複数の基準に基づいて複数の一致する値を返すことは試したことがありますか?この記事では、Excelでこの複雑なタスクを解決するためのいくつかの数式を紹介します。
  • 最後の一致する値をVlookupして返す
  • 繰り返し出現する項目のリストがあり、指定したデータに基づいて最後の一致する値だけを知りたい場合、どのようにすればよいでしょうか?
  • 2つの値の間で一致するデータをVlookupして返す
  • Excelでは、通常のVlookup関数を適用して、与えられたデータに基づいて対応する値を取得できます。しかし、時には次のスクリーンショットのように、2つの値の間で一致する値をvlookupして返したい場合があります。Excelでこのタスクをどのように処理すればよいでしょうか?

最高のオフィス生産性ツール

🤖 Kutools AI Aide:データ分析を革新:インテリジェント実行   |  コード生成  |  カスタム数式の作成  |  データを分析してグラフを生成  |  Kutools Functions を呼び出す
人気機能重複の検索・ハイライト・マーキング   |  空白行を削除   |  データを失わず列やセルを統合   |   丸める ...
スーパーLOOKUP複数条件VLOOKUP   複数値VLOOKUP  |  複数シートの検索  |  ファジーマッチ ....
高度なドロップダウンリストすばやくドロップダウンリストを作成   |  依存型ドロップダウンリスト   |  複数選択ドロップダウンリスト ....
列の管理:特定数の列を追加  | 列を移動  | 非表示列の表示状態を切り替え |  範囲と列の比較 ...
注目機能グリッドフォーカス   |  デザインビュー  |  強化された数式バー   ワークブック&ワークシートの管理   |  オートテキスト ライブラリ (Auto Text)   |  日付ピッカー   |  データの統合   |  セルの暗号化/復号化    リスト送信で電子メールを送信   |  スーパーフィルター   |   特殊フィルタ(太字/斜体/取り消し線でフィルタ...)
トップ15ツールセット12 種類のテキストツールテキストの追加特定の文字を削除など)  |  50 種以上のグラフ タイプガントチャートなど)  |  40を超える実用的な 数式誕生日に基づいて年齢を計算する、など)  |  19種の 挿入ツールQRコードの挿入パスから画像の挿入など)  |  12種類の 変換ツール単語に変換する通貨変換など)  |  7つの 結合&分割ツール高度な行のマージセルの分割など)  |  ...さらに多数
お好きな言語でKutoolsを使用できます ― 英語、スペイン語、ドイツ語、フランス語、中国語など40以上に対応!

Kutools for ExcelでExcelスキルを強化し、かつてない効率を体験しましょう。 Kutools for Excelは300以上の高度な機能で生産性向上と時間短縮を実現します。最も必要な機能を今すぐ取得...


Office TabはOfficeにタブ表示を追加し、作業効率を大幅に向上させます

  • Word、Excel、PowerPointでタブ編集とタブ閲覧を有効にします
  • 同じウィンドウ内の新しいタブで複数のドキュメントを開いたり作成したりできます。新しいウィンドウを開く必要はありません。
  • 生産性が50%向上し、1日に何百回ものマウスクリックも削減できます!