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

Kutools for Office — 1つのスイート、5つのツールで、もっと多くのことを成し遂げましょう。

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

Author Xiaoyang Last modified

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:データ分析を革新します。主な機能:Intelligent Executionコード生成カスタム数式の作成データの分析とグラフの生成Kutools Functionsの呼び出し……
人気の機能重複の検索・ハイライト・重複をマーキング空白行を削除データを失わずに列またはセルを統合丸める……
スーパーLOOKUP複数条件でのVLookup複数値でのVLookup複数シートの検索ファジーマッチ……
高度なドロップダウンリストドロップダウンリストを素早く作成連動ドロップダウンリスト複数選択ドロップダウンリスト……
列マネージャー指定した数の列を追加列の移動非表示列の表示/非表示の切替範囲&列の比較……
注目の機能グリッドフォーカスデザインビュー強化された数式バーワークブック&ワークシートの管理オートテキスト ライブラリ日付ピッカーデータの統合セルの暗号化/復号化リストで電子メールを送信スーパーフィルター特殊フィルタ(太字/斜体/取り消し線などをフィルター)……
トップ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%向上し、毎日のマウスクリック数を何百回も削減!

全てのKutoolsアドインを一つのインストーラーで

Kutools for Officeスイートは、Excel、Word、Outlook、PowerPoint用アドインとOffice Tab Proをまとめて提供。Officeアプリを横断して働くチームに最適です。

Excel Word Outlook Tabs PowerPoint
  • オールインワンスイート — Excel、Word、Outlook、PowerPoint用アドインとOffice Tab Proが含まれます
  • 1つのインストーラー・1つのライセンス —— 数分でセットアップ完了(MSI対応)
  • 一括管理でより効率的 —— Officeアプリ間で快適な生産性を発揮
  • 30日間フル機能お試し —— 登録やクレジットカード不要
  • コストパフォーマンス最適 —— 個別購入よりお得