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

Excelで一つのセルから別のセルにテキストを追加または結合するにはどうすればよいですか?

Author: Siluvia Last Modified: 2025-08-06

日常的なスプレッドシート作業では、複数のセルの値を1つのセルに結合する必要がよくあります。例えば、別々の列にある名(ファーストネーム)、ミドルネーム、姓(ラストネーム)をまとめたい場合や、読みやすくしたり処理しやすくするために断片化された住所やデータ値を統合したい場合です。以下のスクリーンショットに示されているように、タスクはExcelで異なるセルからテキストを追加または結合して、データ管理ニーズに合った統合結果を得ることです。

adding text from one cell to another

これを効率的かつ正確に行うにはどうすればよいでしょうか?この記事では、数式ベースのソリューションと強力なユーティリティの両方を含む複数の方法を詳細に紹介します。これにより、データのサイズや複雑さに関係なく、Excelで1つのセルから別のセルにテキストを迅速に追加または結合することができます。

数式を使用してテキストを1つのセルから別のセルに追加する
Kutools for Excelを使用して簡単にテキストを1つのセルから別のセルに追加する
アンパサンド(&)演算子を使用してテキストを追加する
TEXTJOIN関数を使用してテキストを追加する(Excel 2016以降)
VBAコード(マクロ)を使用して複数のセルからテキストを追加する


数式を使用してテキストを1つのセルから別のセルに追加する

Excelで複数のセルからテキストを結合する効果的な方法の1つは、数式を使用することです。この方法は、セル内での解決策を好むユーザー、またはアドインや追加ツールを使いたくないユーザーに適しています。

1. 結合結果を表示したい空白のセルを選択します。次の数式を数式バーに入力し、適用するためにEnterキーを押します:=CONCATENATE(A1," ",B1," ",C1)

2. 次に、セルD1(またはあなたの数式セル)を選択し、必要に応じてフィルハンドルを下または横にドラッグして、隣接する行または列に数式を拡張します。これにより、全体のデータセットに対してセルの値を迅速に結合できます。

drag and fill the formula to other cells

注意: この数式では、参照するセル(A1、B1、C1)や区切り文字(スペース、カンマ、ハイフンなど)を具体的な要件に応じて調整できます。CONCATENATE関数はすべてのExcelバージョンで利用可能ですが、新しいバージョンのExcelでは、TEXTJOINCONCATといった追加の柔軟性を持つ代替手段も利用可能です。


Kutools for ExcelのCombineユーティリティを使用して簡単にテキストを1つのセルから別のセルに追加する

Kutools for Excelに含まれる「行/列/セルを結合して値を保持」ユーティリティは、複数のセルにわたってテキストを結合または追加するための高速で効率的な方法を提供します。この方法は、手動で数式を使用したくない、またはカスタム区切り文字、配置、後処理オプションを使用して大量のデータセットを結合する必要があるユーザーにとって特に価値があります。このユーティリティは、結合プロセスを簡素化するだけでなく、結果のフォーマットやセル管理において非常に高い柔軟性を提供します。

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

1. 隣接するセル(たとえば、名前の複数の列やデータ)から値を追加したい場合、まずセル範囲を選択します。次に、Kutools > 結合と分割 > 行/列/セルを結合して値を保持 に移動します。視覚的なガイダンスについてはスクリーンショットを参照してください。

2. 「行/列/セルを結合して値を保持」ダイアログボックスで、必要な設定を調整します。

  • A. 追加するセルが異なる列にある場合は、「列の結合」を選択します。
  • B. 区切り文字を指定するフィールドで希望の区切り文字を設定します(例:スペース、カンマ、セミコロン、またはカスタム)。
  • C. 結合された結果を配置する場所を「結果を配置する場所」ドロップダウンリストで選択します。
  • D. 結合後に元の個々の値を削除したい場合は、「これらのセルの内容を削除する」を選択します。
  • E. 操作を確認して実行するには、「OK」をクリックします。

set options in the dialog box

これで、異なる列のセル値が設定に従って結合され、指定した場所に結果が表示されます。

texts in different column cells are appended into one cell

注意:

行の結合」オプションを選択した場合、各行のデータが以下のスクリーンショットのようにマージされ、これは1つの列内で複数の行を連結したい場合に便利です。

select Combine rows option to merge each row data

利点と実用的なヒント: このユーティリティは、大規模なテーブルを処理する場合や、高度なオプション(カスタム区切り文字、ソースデータの保持/削除、柔軟な配置)が必要な場合に最適です。手動操作によるエラーを最小限に抑え、時間を節約し、特にデータ統合タスクを頻繁に行うユーザーにお勧めです。

  このユーティリティを無料で試用したい場合(30日間)、こちらをクリックしてダウンロードし、上記の手順に従って操作を適用してください。


アンパサンド(&)演算子を使用してテキストを追加する

Excelのアンパサンド(&)演算子は、複数のセルからテキストを結合するためのシンプルで普遍的に利用可能な方法です。これは、高度なオプションが不要な簡単な連結タスクに特に便利であり、すべてのExcelバージョンで動作します。この方法は、名前、住所、または隣接するセル内の短いデータを結合する基本的な追加に便利です。

1. テキストを追加したいターゲットセル(例:D1)を選択し、次の数式を入力します。

=A1 & " " & B1 & " " & C1

2. Enterキーを押して確認し、必要に応じてフィルハンドルを使用して他の行に数式をコピーします。

説明とヒント: この方法は少数のセルに対してシンプルで迅速です。引用符内のスペースを置き換えることで、任意の区切り文字(「-」や「, 」など)を使用できます。長い範囲の場合、この方法では各セル参照を含めるために手動編集が必要です。選択した区切り文字の周りに必ず引用符を使用してください。


TEXTJOIN関数を使用してテキストを追加する(Excel 2019以降)

Excel 2019またはそれ以降のユーザーにとって、TEXTJOIN関数は、指定された区切り文字を使用してセル範囲全体からテキストを追加するための柔軟で効率的な方法です。この関数は、多くのセルを結合し、範囲を動的に処理し、必要に応じて空白セルを自動的に無視する場合に非常に推奨されます。

1. 結合結果を表示したいセル(例:D1)で、次の数式を入力します。スペースを区切り文字として使用します。

=TEXTJOIN(" ",TRUE,A1:C1)

2. 数式を実行するにはEnterキーを押します。さらに多くの行を結合したい場合は、単に数式をデータセットに沿ってコピーまたはドラッグします。

パラメータの説明: 最初の引数 " " は区切り文字(この例ではスペース)を設定します。2番目の引数 TRUE は、空白セルを無視することを意味します。A1:C1を実際のデータ範囲に合わせて変更してください。

利点と考慮点: この方法は、特に現代のExcel環境での大規模な範囲や動的なデータに理想的です。以前のExcelバージョンの場合は、代わりにCONCATENATE関数またはアンパサンド演算子を検討してください。範囲(例:A1:C1)を入力することで、一度に複数の行や列を結合でき、手動参照を省略できます。

エラーメッセージ: 使用しているバージョンにTEXTJOINが存在しない場合、#NAME? エラーが表示されることがあります。


VBAコード(マクロ)を使用して複数のセルからテキストを追加する

複数のセル、さらには隣接していないセルからのテキストを結合する必要がある場合(複数のワークシートや複雑な範囲にまたがる可能性もある)は、VBAマクロがプログラム可能で高度に自動化された代替手段を提供します。このソリューションは、繰り返しタスク、大規模なデータセット、または組み込みの数式や関数を超えたカスタムロジックに理想的です。

適用シナリオ: マクロに慣れているユーザー、または大量のデータ統合を管理するユーザーに適しています。特に、自動化や繰り返しの操作が必要な場合に有効です。

1. 開発ツール > Visual Basic を介してVBAエディタを開きます。Microsoft Visual Basic for Applicationsウィンドウで、挿入 > モジュール を選択し、次のコードをモジュールに貼り付けます。

Sub MergeCellsRowByRow()
'Updated by Extendoffice 2025/7/15
    Dim WorkRng As Range
    Dim Delimiter As String
    Dim OutputCell As Range
    Dim rowRng As Range
    Dim cell As Range
    Dim Combined As String
    Dim i As Long

    On Error Resume Next
    xTitleId = "KutoolsforExcel"

    ' Select range to merge
    Set WorkRng = Application.InputBox("Select range to merge by row:", xTitleId, Selection.Address, Type:=8)
    If WorkRng Is Nothing Then Exit Sub

    ' Enter delimiter
    Delimiter = Application.InputBox("Enter a separator:", xTitleId, " ", Type:=2)

    ' Select output starting cell
    Set OutputCell = Application.InputBox("Select starting output cell:", xTitleId, "", Type:=8)
    If OutputCell Is Nothing Then Exit Sub

    On Error GoTo 0
    Application.ScreenUpdating = False

    ' Process each row
    For i = 1 To WorkRng.Rows.Count
        Combined = ""
        For Each cell In WorkRng.Rows(i).Cells
            If cell.Value <> "" Then
                Combined = Combined & cell.Value & Delimiter
            End If
        Next

        ' Remove trailing delimiter
        If Len(Combined) > 0 Then
            Combined = Left(Combined, Len(Combined) - Len(Delimiter))
        End If

        OutputCell.Offset(i - 1, 0).Value = Combined
    Next i

    Application.ScreenUpdating = True
End Sub

2をクリックします。 Run button マクロを実行するボタンをクリックします。指示に従います:最初に結合する範囲を選択し、次に区切り文字(スペース、カンマ、またはその他の文字)を入力し、最後に出力セルを選択します。

実用的なヒント:

  • 大量のデータを持っている場合や、頻繁にテキストを結合する必要がある場合、マクロはタスクを大幅に加速させることができます。
  • このコードは空白セルを自動的に無視するため、事前にデータをフィルタリングする必要はありません。
  • マクロを実行する前に必ず作業内容を保存し、Excelのセキュリティ警告によって促された場合はマクロを有効にしてください。

まとめの提案:

  • 少数または固定数のセルを結合する場合、数式やアンパサンド演算子は迅速で効果的な結果を提供します。
  • 動的な範囲や大規模なデータセットの場合、TEXTJOIN関数またはKutools for Excelの高度な機能を利用してください。
  • 通常の手動結合が非現実的である場合、または複数のワークシートにわたって自動化する必要がある場合、VBAマクロは比類のない柔軟性とカスタマイズを提供します。
  • 常にセル参照と区切り文字を再確認して、結合出力の正確性を確保し、不可逆な操作を適用する前にデータのバックアップを取っておいてください。

関連記事:


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

🤖 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日に何百回ものマウスクリックも削減できます!