KutoolsforOffice— 1 つのソリューション、5 つの強力なツール。少ない労力で大きな成果。

Excel でセルの内容を複数の行に分割する方法(シナリオ別+ツール比較)

著者Sun変更日

本ガイドでは、Excel でセルの内容を複数の行に分割する方法を詳しく解説します。対象セルのみを分割し、他の列は無視するケースと、セルを分割しながら同一行の他のデータを保持するケース——この2 つの代表的なシナリオを取り上げます。それぞれの状況に最適な解決策をご提案するため、Excel の標準機能から Power Query、VBA、サードパーティ製プラグインといった高度なツールまで、多彩な手法をご紹介します。

2 つの一般的な分割シナリオ

データの分割方法は、データセット内の他の列を保持する必要があるかどうかによって異なります。以下に2 つの主要なアプローチをご紹介し、あなたのニーズに最適な方法を選びやすくします。

シナリオ 1:対象セルのみ分割(他の列を無視)

場合によっては、特定のセル内の値だけが重要であり、同じ行の他のデータを複製せずに読みやすくするため、行を分割したいことがあります。

A,B,C

結果:

A
B
C

使用例:他の列とは無関係な、軽量なデータクリーニングや表示タスク。

シナリオ 2:セルを分割しつつ他の列データを保持

別のケースでは、分割後の各値を元の行のデータと組み合わせる必要があります。つまり、1 行が複数のエントリに展開されることになります。

USA | A,B,C

結果:

USA | A
USA | B
USA | C

ユースケース:列間の関係性を維持することが不可欠なデータ正規化。


セルの内容を複数行に分割する必要があるのは、どのような場合ですか?

セルを分割するためのステップバイステップの方法

よくある問題


セルの内容を複数行に分割する必要があるのは、どのような場面ですか?

具体的な方法をご紹介する前に、セルを分割する必要性を理解しておくことが重要です。この操作は、データのクリーニング、再構成、または可視化ワークフローの一環として頻繁に行われます。

代表的なユースケースは次のとおりです。

  • 1 つの列に複数の値が含まれている場合:たとえば、タグや ID、アドレスなどがまとめて格納されているケース。
  • ピボットテーブルまたはチャートには、正規化されたデータ形式の方が適しています。
  • インポートデータのクリーンアップ:特に CRM エクスポートやアンケートツールから取り込んだデータをすっきり整理。
  • データの標準化:テーブルをデータベース向けかつ分析レディな状態に整えます。

セルを分割するためのステップバイステップの方法

ご自身のシナリオが明確になったところで、Excel の標準機能から高度な自動化まで、さまざまな分割方法をご紹介します。技術的な習熟度や使用頻度に応じて、最適な方法をお選びください。


方法 1:Excel の標準機能(「テキストを列に分割」+「形式を選択して貼り付け」の「行列を入れ替える」オプション)

これは、Excel の組み込み機能のみを使った、シンプルで手動の一時的な方法です。

適用シナリオ:シナリオ 1 対象セルのみを分割(他の列は無視)

手順:

ステップ 1.セルを選択してください。

ステップ 2.データの選択 > 「テキストを列に分割」を選択してください。

doc-method-1-select-text-to-column

ステップ 3.「テキストを列に分割ウィザード」で、

  1. 区切り文字付きを選択して、「次へ」をクリックします。

    doc-method-1-text-to-column-select-delimited

  2. コンマを選択して、「次へ」をクリックします。

    doc-method-1-text-to-column-select-comma

  3. 出力先のセルを選択して[完了]をクリックします。

    doc-method-1-text-to-column-select-destination-cell

これにより、セルの内容がカンマで区切られ、複数の列に分割されます。

doc-method-1-text-to-column

ステップ 4.セルの分割を選択し、Ctrl + C キーを押してコピーします。貼り付け先のセルを右クリックし、「選択的貼り付け」の下にある「行列を入れ替える」アイコンをクリックしてください。

doc-method-1-transpose-paste

内容が行方向に転置されます。

doc-method-1-transpose-paste-result

メリットデメリット
  • インストールは不要です。
  • とても分かりやすいです。
  • 自動的には更新されません。
  • 手動で行うため、拡張性に欠けます。

方法 2:TRANSPOSE(TEXTSPLIT())関数(Microsoft 365)

この方法では、TEXTSPLIT 関数(区切り文字に基づいてテキストを分割)と TRANSPOSE 関数を組み合わせることで、分割後の値を行方向に即座に表示します。

適用シナリオ:シナリオ 1 対象セルのみを分割(他の列は無視)

手順:

ステップ 1.縦方向のリストを開始したい空白セルに数式を入力してください。

数式例:セル A1 が行の分割対象となるセルです。

この場合の数式は次のとおりです。

=TRANSPOSE(TEXTSPLIT(A1,","))</div)

ヒント:データの区切り文字に応じて、「、」を「;」や「|」に変更できます。

手順 2。Enter キーを押してください。

doc-method-2-use-transpose-split-function

メリットデメリット
  • 完全に動的で、変更に応じて自動的に更新されます。
  • プラグインや手動操作は一切不要です。
  • TEXTSPLIT 関数とダイナミック配列をサポートするExcel バージョン(Excel 365)でのみ動作します。

方法 3:Power Query – 区切り文字で分割して行を展開(Microsoft 2016 以降のバージョン)

Power Query は、構造化された繰り返し操作に最適です。強力で更新可能、バッチデータ変換に卓越しています。

対応シナリオ:シナリオ 1(対象セルのみ分割)およびシナリオ 2(セルを分割しつつ他の列データを保持)の両方

手順:シナリオ 1(対象セルのみ分割)を例に説明します

手順 1。範囲を選択し、[データ]タブの[データの取得と変換]から[テーブル/範囲から]をクリックします。

手順 2. 「テーブルの作成」で[OK]をクリックします。(範囲にヘッダーが含まれる場合は、「テーブルにヘッダーが含まれる」をオンにしてください。)

doc-method-3-convert-to-table

手順 3。Power Query エディターで「区切り文字で列を分割」機能をご利用ください。

doc-method-3-select-delimiter

手順 4。区切り文字を選択または入力し、「詳細設定」をクリックしてオプションを展開、「行に分割」を選択して「OK」をクリックします。

doc-method-3-select-delimiter-and-rows

手順 5。「閉じて読み込む」>「閉じて読み込む」または「閉じて次へ」を選択してください。

doc-method-3-load

  • 閉じて読み込む

    機能:クエリ結果をデフォルトの場所に直接読み込みます。

    doc-method-3-close-load

  • 閉じて次へ。。。

    機能:読み込みオプションをカスタマイズでき、データの保存場所と保存方法を自由に選択可能。 おすすめ用途:定期的なレポート作成や大規模データセットの処理に最適。

シナリオ 2(他の列のデータを保持しながらセルを分割)にも、同じ手順が適用されます。結果をご確認ください。

対象セル範囲:

doc-method-3-scenario-2-target-cells

結果:

結果

注:Power Query エディター画面で、行に分割したい対象列のみを選択し、「列の分割」にある「区切り文字で分割」をクリックしてください。

メリットデメリット
  • 完全に自動化されています。
  • データ量の増加にもしっかり対応可能です。
  • どのくらいの学習が必要ですか。
  • 新しいデータには、更新操作が必要です。

ヒント:Trim(トリム)や Clean(クリーン)のステップを追加すれば、空白や特殊文字を簡単に修正できます。


方法 4:Kutools プラグイン – クリックによる分割

セルの分割を頻繁に行う方や GUI ベースのソリューションを好まれる方には、Kutools が最適です。複雑な操作もわずか数回のクリックで簡単にこなせます。

適用シナリオ:シナリオ1(対象セルのみを分割)およびシナリオ2(セルを分割しつつ他の列のデータを保持)のどちらにも最適です。

手順:シナリオ 1(対象セルのみ分割)

手順 1。対象のセルを選択してください。

手順 2。[Kutools] > [結合と分割] > [セルの分割] を選択します。

手順 3。「行に分割」を選択し、区切り文字を指定して「OK」をクリックします。

doc-method-4-kutools-select-rows-delimiter

手順 4。出力先のセルを選択して、「OK」をクリックします。

doc-method-4-kutools-select-destination

doc-method-4-kutools-result

今すぐダウンロード

手順:シナリオ 2(セルを分割しつつ他の列データを保持)

手順 1。分割したい列を行ごとに選択します。

手順 2。[Kutools]>[結合と分割]>[複数行に分割する]に移動します。

doc-method-4-kutools-split-data-to-rows

手順 3。区切り文字を指定し、「OK」をクリックします。

doc-method-4-kutools-split-data-to-rows-select-delimiter

doc-method-4-kutools-split-data-to-rows-result

シナリオ 2(他の列のデータを保持しながらセルを分割)にも、同じ手順が適用されます。結果をご確認ください。

対象セル範囲:

doc-method-3-scenario-2-target-cells

結果:

結果

メリットデメリット
  • とても使いやすいです。
  • わずか数回のクリックで、大量のデータを簡単に処理できます。
  • プラグインが必要です(すべての機能が無料というわけではありません)。
今すぐダウンロード

注:30 日間のトライアル版では、すべての機能をじっくりとお試しいただけます。


方法 5:VBA スクリプト – 完全なカスタム制御

プログラミング知識をお持ちのユーザーにとって、VBA は最高レベルの柔軟性を提供します。スクリプトをカスタマイズして、 precisely お望みのデータレイアウトやビジネスルールにぴったり合わせることが可能です。

適用シナリオ:シナリオ1(対象セルのみを分割)とシナリオ2(セルを分割しつつ他の列のデータを保持)の両方に最適です。

手順:

手順 1。Alt + F11 キーを押して、VBA エディターを開きます。

手順 2。[挿入]>[標準モジュール]をクリックします。

手順 3。以下の VBA コードをコピーして貼り付けてください。

シナリオ 1 対象セルのみ分割

'Update by Extendoffice
Sub SplitCellToRows_Simple()
    Dim InputCell As Range
    Dim Values As Variant
    Dim i As Long

  
    Set InputCell = Range("A1") ' change A1 to your target cell

    Values = Split(InputCell.Value, ",") 
    For i = 0 To UBound(Values)
        InputCell.Offset(i, 1).Value = Trim(Values(i))
    Next i
End Sub

doc-method-5-split-to-rows-simple

シナリオ2 セルを分割しつつ他の列データを保持

'Update by Extendoffice
Sub SplitRowsWithOtherColumns()
    Dim ws As Worksheet
    Dim LastRow As Long, i As Long
    Dim arr As Variant, j As Long
    Dim SplitVals As Variant
    Dim CurrentRow As Long

    Set ws = ActiveSheet
    LastRow = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row
    For i = LastRow To 2 Step -1
        If InStr(ws.Cells(i, 2).Value, ",") > 0 Then
            SplitVals = Split(ws.Cells(i, 2).Value, ",")

            For j = UBound(SplitVals) To 1 Step -1
                ws.Rows(i + 1).Insert Shift:=xlDown
                ws.Cells(i + 1, 1).Value = ws.Cells(i, 1).Value
                ws.Cells(i + 1, 2).Value = Trim(SplitVals(j))
            Next j

            ws.Cells(i, 2).Value = Trim(SplitVals(0))
        End If
    Next i
End Sub

doc-method-5-split-to-rows-complex

注:この VBA スクリプトは、データが A 列~B 列にあり、分割対象の値が B 列にある場合にのみ動作するように設定されています。

デメリット
  • 今後もスクリプトを使用し続けるには、マクロ有効ファイル(。xlsm)として保存する必要があります。

💡ヒント:

  • マクロを実行する前に、必ずデータをバックアップしてください。
  • スクリプト内の「、」を、実際の区切り文字(例:セミコロンの場合は「;」、パイプ文字の場合は「|」)に置き換え、データ形式に合わせてください。

よくある問題

  • 空白行または列:末尾の区切り文字や隠しスペースが原因であることが多いです。
  • 結合されたエラーチェック:開始前にセルの結合を解除してください。
  • Power Query が更新されない?ソースデータを変更した後は、必ず「更新」をクリックしてください。
  • 区切り文字の誤り:セミコロンとコンマを間違えると、結果全体が大きく狂ってしまうことがあります。

関連記事:

最高の Office 業務効率化ツール

🤖KUTOOLS AI アシスタント:次に基づいてデータ分析を革新します:インテリジェント実行     コード生成  カスタム数式作成    データ分析とチャート生成  拡張機能呼び出し
人気の機能検索・ハイライト、または重複をマーキング     空白行を削除する     データを失うことなく列の結合またはセルを     数式を使用しない四捨五入...
スーパー LOOKUP複数条件 VLookup    複数値 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 でタブを使った編集と閲覧を有効にします。Publisher、Access、Visio、Project でもご利用いただけます。
  • 複数のドキュメントを、新しいウィンドウではなく、同じウィンドウ内の新しいタブで開いたり作成したりできます。
  • 日々の生産性を50%も向上させ、毎日数百回ものマウスクリックを削減します!

すべてのKutools アドインが、たった1 つのインストーラーで完結。

Kutools for Officeスイートには、Excel ・Word ・Outlook ・PowerPoint 用のアドインと Office Tab Pro が含まれており、複数の Office アプリを横断して作業するチームに最適です。

ExcelWordOutlookTabsPowerPoint
  • オールインワンスイート— Excel、Word、Outlook、PowerPoint 用アドイン+Office Tab Pro
  • インストーラー1 つ、ライセンス1 つ— 数分でセットアップ可能(MSI 対応)
  • 連携してさらにパワーアップ— Office アプリ全体で生産性が向上
  • 30 日間のフル機能トライアル— 登録不要、クレジットカード不要
  • 最高のお得感— 個別アドイン購入よりお得