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

ExcelでVLOOKUPを使用して複数の対応する値を連結するにはどうすればよいですか?

Author: Xiaoyang Last Modified: 2025-05-23

ExcelでVLOOKUPを使用すると、通常はデータセットから最初に一致する値が返されます。しかし、特定のクラスに関連するすべての名前など、複数の対応する値を返して連結する必要があるシナリオもあります。VLOOKUPだけではこれが実現できないため、目的の結果を得るために高度な手法を探ります。


TEXTJOINおよびFILTER関数を使用して複数の対応する値をVLOOKUPし連結する

Excel 365またはExcel 2021を使用している場合、TEXTJOINとFILTER関数を組み合わせることで、複数の対応する値を効率的かつ強力に連結できます。

ターゲットセルに次の数式を入力し、他のセルに数式をドラッグしてセルを埋めます。すべての対応する一致した値が抽出され、1つのセルに結合されます。スクリーンショットをご覧ください:

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

vlookup and concatenate multiple values with TEXTJOIN and FILTER Functions

この数式の説明:
  1. FILTER($B$2:$B$16, $A$2:$A$16=D2, ""):条件を満たすすべての値を含む配列を返します。
    • $B$2:$B$16: フィルター処理するデータの範囲。
    • $A$2:$A$16=D2: フィルター条件で、$A$2:$A$16の値がD2セルの値と等しくなければなりません。
  2. TEXTJOIN(", ", TRUE, ...):すべての一致する値をカンマとスペースで区切って1つの文字列に結合します。
    • ", ": 各値を区切るために使用される区切り文字(この場合はカンマとスペース)。
    • TRUE: 空の値を無視して余分な区切り文字が含まれないようにします。

Kutools for Excelを使用して複数の対応する値をVLOOKUPし連結する

複数の対応する値を扱う際のExcelのVLOOKUPの制限に疲れていませんか?しかし、Kutools for Excelの一対多検索機能を使えば、わずか数クリックで複数の対応する値を簡単に検索して連結できます!

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

結果:これで、すべての一致する値が1つのセルに連結されました。スクリーンショットをご覧ください:
concatenated based on the criteria by kutools


ユーザー定義関数を使用して複数の対応する値をVLOOKUPし連結する

VBA(Visual Basic for Applications)に慣れている場合、ユーザー定義関数(UDF)を作成して複数の対応する値を連結できます。この方法はすべてのバージョンのExcelで動作します。

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

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

VBAコード:セル内の複数の一致する値をVLOOKUPして連結する

Function ConcatenateMatches(LookupValue As String, LookupRange As Range, ReturnRange As Range, Optional Delimiter As String = ", ") As String
'Updateby Extendoffice
    Dim Cell As Range
    Dim Result As String
    Result = ""
    For Each Cell In LookupRange
        If Cell.Value = LookupValue Then
            Result = Result & Cell.Offset(0, ReturnRange.Column - LookupRange.Column).Value & Delimiter
        End If
    Next Cell
    If Result <> "" Then
        Result = Left(Result, Len(Result) - Len(Delimiter))
    End If
    ConcatenateMatches = Result
End Function

3. その後、このコードを保存して閉じ、ワークシートに戻り、この数式を入力します:=ConcatenateMatches(D2, $A$2:$A$16, $B$2:$B$16) を結果を表示したい空白のセルに入力し、フィルハンドルを下にドラッグして他のセルに数式を適用します。特定のデータに基づくすべての対応する値がカンマとスペースで区切られて1つのセルに返されます。スクリーンショットをご覧ください:

concatenated based on the criteria by vba

この数式の説明:
  • D2: これは指定された範囲(LookupValue)内で探している値です。
  • A2:A16: 関数が検索値(LookupRange)を探す範囲です。
  • B2:B16: 検索値が一致した場合に連結する値を含む範囲(ReturnRange)。

Excelで複数の対応する値を連結するには、さまざまな方法があります。各方法には独自の利点があります。TEXTJOINやFILTERのような組み込み関数、Kutoolsのようなサードパーティツール、カスタムVBAソリューションのいずれを使用するかは、お使いのExcelのバージョン、スキルレベル、および特定の要件に最も適した方法を選ぶことが重要です。さらに多くのExcelのヒントやコツに興味がある場合、当社のウェブサイトでは数千ものチュートリアルを提供しています

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

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

Kutools for ExcelでExcelスキルを強化し、これまでにない効率を体験してください。 Kutools for Excelは、300以上の高度な機能を提供し、生産性を向上させ、保存時間を節約します。  最も必要な機能を入手するにはここをクリック...


Office TabはOfficeにタブインターフェイスをもたらし、作業を非常に簡単にします

  • Word、Excel、PowerPoint、Publisher、Access、Visio、Projectでタブ付きの編集と読み取りを有効にします。
  • 新しいウィンドウではなく、同じウィンドウの新しいタブで複数のドキュメントを開いて作成します。
  • 生産性を50%向上させ、毎日数百回のマウスクリックを減らします!