Excel で重複文字または重複単語を削除する
著者Xiaoyang•変更日
Excel でテキストデータを扱う際、1 つのセル内に重複した文字や繰り返しの単語が含まれていることはよくあります。これは、インポートされたデータやユーザー入力、タグ、商品説明などで特に多く見られます。こうした重複をクリーンアップすれば、読みやすさが向上し、データの一貫性が保たれ、さらに信頼性の高い分析が可能になります。
このガイドでは、Excel で重複する文字や単語を削除するための効果的な方法をいくつかご紹介します。組み込みの数式、Kutools for Excel による高速バッチ処理、カスタマイズ可能な VBA 関数などをご用意しています。お使いのExcel バージョンや技術レベル、ワークフローの要件に応じて、最適な方法をお選びください。

Excel で重複文字を削除
重複文字の削除とは、セル内の各文字について最初に現れたものだけを残し、後の重複をすべて取り除くことを意味します(例:「)aabbcc」→「abc」)。以下では、この処理を実現するための3 つの実用的な方法をご紹介します。
Excel 数式を使用
Microsoft 365 向け Excel または Excel 2021 以降をご利用の場合、動的配列数式を使って重複する文字を簡単に削除できます。この方法は完全な組み込み機能で、ソースデータに変更があると自動的に結果が更新されるため、数式ベースの解決策を好む方に最適です。
手順:
- 結果を表示したい空白セル(例:D2)を選択してください。
- 次の数式を入力します:
=TEXTJOIN("",,UNIQUE(MID(A2,ROW(INDIRECT("1:"&LEN(A2))),1))) - Enterキーを押すと、結果が表示されます。
- 必要に応じて、フィルハンドルを下にドラッグして、数式を他のセルにも適用してください。

数式の仕組み:
- MIDはテキストから各文字を抽出します
- ROW+INDIRECTが文字位置を生成します
- UNIQUE 重複を削除
- TEXTJOINは結果を文字列に再結合します
- この方法はExcel 365/2021 以降でのみ動作します
- #NAME?が表示される場合、お使いのバージョンではこれらの関数がサポートされていない可能性があります
Kutools for Excel を一括で使用
複雑な数式を避けたいときや、大規模なデータセットでより高速かつ手軽に処理したい場合は、Kutools for Excelを使えば、重複文字を一括で簡単に削除できます。
Kutools for Excel—Excel 向けの必須ツールを300 以上搭載!Excel 作業がより迅速・簡単・効率的になります。今すぐダウンロード!
手順:
- 重複文字を削除したいセル範囲を選択してください。
- Kutools>テキスト>特定の文字を削除。

- 特定の文字を削除ダイアログボックスで、重複文字オプションのみをチェックして、OKをクリックします。

結果:
選択した各セル内の重複文字が即座に削除され、最初の出現のみが保持されます。

メリット:
- 数式やコーディングは不要
- すべてのExcel バージョンで動作
- バッチ処理をサポート
- シンプルで直感的なインターフェース
- 大規模データセットで大幅な時間節約
Kutools for Excel— 300 以上の必須ツールでExcel のパフォーマンスを強化し、作業をより迅速かつ簡単に。AI 機能を活用して、スマートなデータ処理と生産性の向上を実現します。今すぐ入手
ユーザー定義関数を使用
お使いのExcel バージョンが動的配列数式をサポートしていない場合や、再利用可能なカスタム解決策をご希望の場合は、重複文字を削除する VBA ユーザー定義関数(UDF)をご利用いただけます。
手順:
- Alt +F11 キーを押して、VBA エディターを開きます。
- [挿入]>[モジュール]をクリックします。
- 次のコードを貼り付けます:VBA コード:重複文字を削除
Function RemoveDupes1(pWorkRng As Range) As String 'Updateby Extendoffice Dim xValue As String Dim xChar As String Dim xOutValue As String Set xDic = CreateObject("Scripting.Dictionary") xValue = pWorkRng.Value For i = 1 To VBA.Len(xValue) xChar = VBA.Mid(xValue, i, 1) If xDic.Exists(xChar) Then Else xDic(xChar) = "" xOutValue = xOutValue & xChar End If Next RemoveDupes1 = xOutValue End Function
- Alt +Q キーを押すと、VBA エディターが閉じてExcel に戻ります。
- 結果を表示したい空白セルに、次の数式を入力します:
=RemoveDupes1(C2)
- マクロを有効にする必要があります
- この関数は現在のブックでのみ動作します
補足:ユーザー定義関数で重複単語を削除する
場合によっては、データに文字ではなく単語が繰り返されていることがあります。例えば:
そのような場合、単語の順序を保ちつつ、重複を除いて一意の単語だけを残したいことがあります。
この方法を使えば、カンマやスペース、セミコロンなどの区切り文字に基づいて重複する単語を簡単に削除できます。
手順:
- Alt +F11 キーを押して、VBA エディターを開きます。
- [挿入]>[モジュール]をクリックします。
- 次のコードを貼り付けます:VBA コード:重複単語を削除
Function RemoveDupes2(txt As String, Optional delim As String = " ") As String Dim x With CreateObject("Scripting.Dictionary") .CompareMode = vbTextCompare For Each x In Split(txt, delim) If Trim(x) <> "" And Not .exists(Trim(x)) Then .Add Trim(x), Nothing Next If .Count > 0 Then RemoveDupes2 = Join(.keys, delim) End With End Function
- Alt +Q キーを押すと、VBA エディターが閉じてExcel に戻ります。 to close the VBA editor and return to Excel.
- 結果を表示したい空白セルに、次の数式を入力します:
=RemoveDupes2(A2,",") - Enter キーを押して結果を取得し、フィルハンドルを下にドラッグして、他のセルにも数式を適用します。

- この数式では、「,」を「」や「;」などの他の区切り文字に置き換えることができます
- データが一貫した形式で整っている場合に最適です
- 複数の区切り文字を使用する場合はカスタマイズが必要になる場合があります
まとめ
Excel で重複文字や重複単語を削除する方法はいくつかあり、それぞれのニーズやExcel 環境に応じて選択できます。
- 組み込み機能で動的な解決策を好む場合は、Excel の数式を使用してください(Excel 365/2021)。
- Kutools for Excel を使用すると、数式を使わずにバッチ処理を高速に行えます。
- 柔軟性が必要な場合や古いバージョンのExcel を使用している場合は、VBA 関数を使用してください。
各方法には独自のメリットがあり、最適な選択肢はワークフロー、技術的な習熟度、データの複雑さによって異なります。大規模なデータセットを扱うほとんどのユーザーにとって、Kutools のようなツールはプロセスを大幅に簡素化し、効率を飛躍的に高めてくれます。
最高のオフィス生産性ツール
| 🤖 | KUTOOLS AI アシスタント:次に基づいてデータ分析を革新します:インテリジェント実行 | コード生成| カスタム数式作成 | データ分析とチャート生成| 拡張機能呼び出し… |
| 人気の機能:検索、ハイライト、または重複をマーキング | 空白行を削除する | データを失うことなく列の結合またはセルを | 数式を使用しない四捨五入... | |
| スーパー LOOKUP:複数条件 VLookup | 複数値 VLookup | 複数シート間 VLookup | ファジーマッチ.... | |
| 高度なドロップダウンリスト:ドロップダウンリストをすばやく作成 | 連動型ドロップダウンリスト | 複数選択可能なドロップダウンリスト.... | |
| 列マネージャー:指定した数の列を追加|列を移動|非表示列の表示状態を切り替え|範囲と列を比較... | |
| 注目の機能:グリッドフォーカス | デザインビュー |強化された数式バー | ワークブック&シートマネージャー | リソースライブラリ(オートテキスト)| 日付ピッカー | ワークシートの統合 | 暗号化/セルの復号化 | リストからメール送信 | スーパーフィルター | 特殊フィルタ(太字のフォントを持つセルをフィルタリング/斜体/取り消し線。。。) 。。。 | |
| トップ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% 向上させ、毎日何百回ものマウスクリックを削減します!
Kutools アドインすべて。インストーラーは1 つだけ
Kutools for Officeスイートには、Excel、Word、Outlook、PowerPoint 用のアドインと Office Tab Pro が含まれており、Office アプリ間で連携するチームに最適です。
- オールインワンスイート— Excel、Word、Outlook、PowerPoint のアドイン+Office Tab Pro
- インストーラー1 つ、ライセンス1 つ— 数分でセットアップ可能(MSI 対応)
- 連携してさらにパワーアップ— Office アプリ全体で生産性を合理化
- 30 日間のフル機能トライアル— 登録不要、クレジットカード不要
- ベストバリュー— 個別アドイン購入よりお得






