Excelで一意の値を連結する方法
いくつかの重複データが入っている値のリストが長い場合は、一意の値だけを見つけてそれらを1つのセルに連結したいと考えています。 この問題をExcelですばやく簡単にどのように処理できますか?
列内の一意の値を見つけ、それらをVBAコードで1つのセルに連結する
列内の一意の値を見つけ、Excel用Kutoolsでそれらを1つのセルに連結します。
一意の値を列挙し、Excel用Kutoolsで対応する値を連結する
列内の一意の値を見つけ、それらをVBAコードで1つのセルに連結する
以下 ユーザー定義関数 一意の値だけをリストから1つのセルに連結するのに役立ちます。次のようにしてください。
1。 押さえつける Alt + F11 キーを押して アプリケーション用Microsoft Visual Basic 窓。
2に設定します。 OK をクリックします。 インセット > モジュール、次のコードを モジュール 窓。
VBAコード:一意の値を1つのセルに連結します。
Function ConcatUniq(xRg As Range, xChar As String) As String 'updateby Extendoffice 20151228 Dim xCell As Range Dim xDic As Object Set xDic = CreateObject("Scripting.Dictionary") For Each xCell In xRg xDic(xCell.Value) = Empty Next ConcatUniq = Join$(xDic.Keys, xChar) Set xDic = Nothing End Function
3. 次に、ワークシートに戻り、次の数式を入力します。 = ConcatUniq(A1:A17、 "、") 連結結果を出力したいブランクセルに入力し、 入力します ユニークな連結結果を得るためのキーです。スクリーンショットを参照してください:
注上記の式において、 A1:A17 連結したいセルの範囲です。カンマ ","は、結合された値を区切るために必要な区切り文字です。必要に応じて変更することができます。
列内の一意の値を見つけ、Excel用Kutoolsでそれらを1つのセルに連結します。
VBAコードに精通していない場合は、 Kutools for Excel またあなたを助けることができる、あなたは Duplicate&Unique Cellsを選択 で 組み合わせる あなたが必要とする結果を達成するためのユーティリティー。
Kutools for Excel : 300便利なExcelアドイン以上で、60日以内に自由に試してみてください. |
インストールした後 Kutools for Excel、次のようにしてください:( Excel用のKutoolsを今すぐダウンロードしてください! )
1。 一意の値のみを結合するセルのリストを選択します。
2に設定します。 OK をクリックします。 クツール > 選択します > Duplicate&Unique Cellsを選択、スクリーンショットを見る:
3。 の中に Duplicate&Unique Cellsを選択 ダイアログボックスで オールユニーク(1 st duplicatesを含む) オプションの下に ルール セクション、スクリーンショットを参照してください:
ヒント:最初に出現する重複を除いて一意の値を結合する場合は、 一意の値のみ オプションを選択します。
4。 次に、をクリックします OK ボタンを押し、ユニークな値だけを選択してから、 Ctrlキー+ C それらをコピーして、特定の場所に貼り付けるには Ctrlキー+ V、スクリーンショットを見る:
5。 ペーストされた一意のセルを選択し、[OK]をクリックします。 クツール > 組み合わせる、スクリーンショットを見る:
6。 の中に 列または行を結合する ダイアログボックスで、 単一細胞に結合する 下 選択されたセルを以下のオプションに従って結合する次に、結合したデータの区切り文字を指定します。スクリーンショットを参照してください:
7。 次に、をクリックします Ok or 適用します ボタンを押すと、抽出されたユニークな値が次のスクリーンショットのように1つの単一セルに連結されます。
Excel用のKutoolsを今すぐダウンロードしてください!
一意の値を列挙し、対応する値をVBAコードと連結する
別のケースでは、2つの列を含む一連のデータがあります。次に、一意の値のみをリストし、別の列の対応する値を連結して次の結果を得たい場合は、このジョブを終了する良い方法がありますかExcelで?
ここでは、このジョブに対処するために次のVBAコードを適用できます。次のようにしてください。
1。 押さえつける Alt + F11 キーを押して アプリケーション用Microsoft Visual Basic 窓。
2に設定します。 OK をクリックします。 インセット > モジュール、次のコードを モジュール 窓。
VBAコード:一意の値を列挙し、対応するデータを連結する
Sub test() 'updateby Extendoffice 20151228 Dim xRg As Range Dim xArr As Variant Dim xCell As Range Dim xTxt As String Dim I As Long Dim xDic As Object On Error Resume Next xTxt = ActiveWindow.RangeSelection.Address Set xRg = Application.InputBox("Please select the data range", "Kutools for Excel", xTxt, , , , , 8) Set xRg = Application.Intersect(xRg, xRg.Worksheet.UsedRange) If xRg Is Nothing Then Exit Sub If xRg.Areas.Count > 1 Then MsgBox "Does not support multiple selections", , "Kutools for Excel" Exit Sub End If If xRg.Columns.Count <> 2 Then MsgBox "There must be only two columns in the selected range", , "Kutools for Excel" Exit Sub End If xArr = xRg Set xDic = CreateObject("Scripting.Dictionary") xDic.CompareMode = 1 For I = 1 To UBound(xArr) If Not xDic.Exists(xArr(I, 1)) Then xDic.Item(xArr(I, 1)) = xDic.Count + 1 xArr(xDic.Count, 1) = xArr(I, 1) xArr(xDic.Count, 2) = xArr(I, 2) Else xArr(xDic.Item(xArr(I, 1)), 2) = xArr(xDic.Item(xArr(I, 1)), 2) & "," & xArr(I, 2) End If Next Sheets.Add.Cells(1).Resize(xDic.Count, 2).Value = xArr End Sub
3。 次に、 F5 キーを押してこのコードを実行し、プロンプトボックスがポップアップして、一意の値に基づいて連結したいデータ範囲を選択するよう促します。スクリーンショットを参照してください。
4に設定します。 OK をクリックします。 OKユニークな値が抽出され、別の列の対応する値が連結されて新しいワークシートになります。
注:上記のコードでは、赤いコンマ xArr(xArr(I、1))、2)= xArr(xDic.Item(xArr(I、1))、,"&xArr(I、2) このスクリプトでは、結合されたデータを分離したい他の区切り文字に変換します。
一意の値を列挙し、Excel用Kutoolsで対応する値を連結する
あなたが持っている場合 Kutools for Excelそのと 高度な行の結合 この問題をコードなしですばやく簡単に解決できます。
インストールした後 Kutools for Excel、次のようにしてください:( Excel用のKutoolsを今すぐダウンロードしてください! )
1。 まず、元のデータを保持したい場合は、元のデータのコピーを作成する必要があります。 そして、一意の値に基づいて連結するデータ範囲を選択します。
2。 次に、をクリックします クツール > コンテンツ > 高度な行の結合、スクリーンショットを見る:
3。 の中に 高度な行の結合 ダイアログボックスで、一意の値のみを一覧表示する列名をクリックし、[OK]をクリックします。 主キー、スクリーンショットを見る:
4。 次に、連結したい別の列名をクリックし、をクリックします。 組み合わせる結合されたデータを区切るための区切り文字を1つ選択してください。スクリーンショットを参照してください:
5。 そして、 Ok ボタンをクリックすると、次のスクリーンショットのように、別の列の一意の値に基づいて値が連結されます。
Excel用のKutoolsを今すぐダウンロードしてください!
Kutools for Excelは、ほとんどの問題を解決し、生産性を80%向上させます
- 再利用: すばやく挿入 複雑な数式、チャート そして、以前に使用したもの; セルを暗号化する パスワード付き メーリングリストの作成 そしてメールを送る...
- スーパーフォーミュラバー (複数行のテキストや数式を簡単に編集する) レイアウトを読む (多数のセルを簡単に読んで編集できます)。 フィルター範囲に貼り付ける...
- セル/行/列を結合 データを失うことなく; セルコンテンツの分割。 重複する行/列を結合する...重複セルの防止。 範囲の比較...
- 重複または一意を選択します 行 空白行を選択 (すべてのセルは空です)。 スーパー検索とファジー検索 多くのワークブックで。 ランダム選択
- 完全コピー 式の参照を変更せずに複数のセル。 参照を自動作成 複数のシートに 箇条書きを挿入、チェックボックスなど
- テキストを抽出、テキストの追加、位置による削除、 スペースを削除する; ページング小計の作成と印刷 セルのコンテンツとコメント間の変換...
- スーパーフィルター (保存して他のシートにフィルタ方式を適用する)。 高度な並べ替え 月/週/日、頻度などによる。 特殊フィルター 太字、斜体で...
- ワークブックとワークシートを組み合わせる; キー列に基づいて表をマージします。 データを複数のシートに分割する; xls、xlsx、およびPDFのバッチ変換...
- 300を超える強力な機能。 Office / Excel 2007-2019および365をサポートします。 すべての言語をサポートします。 企業または組織に簡単に展開できます。 フル機能の30日間の無料トライアル。

OfficeタブはOfficeにタブ付きインターフェイスを提供し、作業をより簡単にします
- Word、Excel、PowerPointでタブ付き編集と読み取りを有効にする、出版社、アクセス、Visioおよびプロジェクト。
- 新しいウィンドウではなく、同じウィンドウの新しいタブで複数のドキュメントを開いて作成します。
- 生産性を50%向上させ、毎日数百回のマウスクリックを削減します。
