キャリッジリターンに基づいてセルの内容を複数の列または行に分割
Excel を使用していると、改行やキャリッジリターンで区切られた複数の値が1 つのセルに含まれていることがあります。こうしたデータを効果的に分析・操作するには、セル内の内容を複数の列または行に分割するのが最適です。本ガイドでは、その手順をステップ・バイ・ステップでわかりやすく解説します。
セルの分割をキャリッジリターンに基づいて複数の列に分割
以下のスクリーンショットのように、キャリッジリターンで区切られたセルの内容を改行ごとに複数の列に分割したい場合、このセクションではそのための3 つの効果的な方法をご紹介します。
「テキストを列に分割」機能を使用する
Excel の「テキストを列に分割」機能は、セルの内容を複数の列にスマートに分けるのに最適です。
- 分割したいデータが含まれるセルを選択してください。
- 「データ」タブに移動し、「テキストを列に分割」をクリックしてください。

- 「テキストを列に分割ウィザード」で「区切り記号付き」を選択し、「次へ」をクリックしてください。

- ステップ2 で、「区切り記号」の下にある「その他」オプションをチェックし、その横のボックスをクリックしてから「Ctrl」+「J」キーを押して、「次へ」をクリックしてください。スクリーンショットをご参照ください:

- ステップ3 で、結果を表示するセルを指定し、「完了」ボタンをクリックして操作を終了します。

- 現在、すべてのセルの内容が、以下のスクリーンショットのように複数の列に分割されています。

Kutools for Excel を使用
Kutools for Excel は、カンマやキャリッジリターンなどの特定の区切り文字に基づいて、セルの内容を複数の列に素早く分割できる使いやすい機能を提供します。直感的なインターフェースと簡単な操作で、データ処理がより効率的かつシームレスに!
- 分割したいデータの範囲を選択してください。
- 「Kutools」>「結合と分割」>「セルの分割」をクリックしてください(スクリーンショット参照)。

- 「セルの分割」ダイアログボックスで、「タイプ」セクションから必要な「列に分割」オプションを選択し、「指定方法」セクションで「このセルにデータを保存すると、ワークシートの最大行列制限を超えます。適切なセルを選択してデータを保存してください」のチェックボックスをオンにしてください(スクリーンショット参照)。

- 次に「OK」ボタンをクリックすると、結果を出力するセルを選択するよう促すプロンプトボックスが表示されます(スクリーンショット参照)。

- 「OK」をクリックすると、選択したすべてのセルの値がキャリッジリターンに基づいて複数の列に分割されます(スクリーンショット参照)。

TEXTSPLIT 関数を使用する(Excel 365)
Excel 365 ユーザー向けに、TEXTSPLIT 関数はセルの内容を動的に分割する方法を提供します。
結果を出力する空白セルに以下の数式を入力し、「Enter」キーを押すと、テキストが自動的に列に分割されます。その後、数式が入ったセルを下方向にドラッグして他のセルにも適用してください(スクリーンショット参照)。
=TEXTSPLIT(A1, CHAR(10))

セルの分割をキャリッジリターンに基づいて複数の行に分割
以下のスクリーンショットのように、キャリッジリターンで区切られた複数行のテキストを含むセルの内容を個別の行に分割する必要がある場合、Excel にはそのための効率的な方法がいくつか用意されています。このセクションでは、あなたのニーズに最適なソリューションを選びやすくするため、これらの手法をステップ・バイ・ステップでわかりやすく解説します。
VBA コードを使用する
VBA は、マクロに慣れたユーザーにとって強力なソリューションを提供します。
- 「ALT」キーと「F11」キーを同時に押すと、「Microsoft Visual Basic for Applications」のウィンドウが開きます。
- 「挿入」>「標準モジュール」をクリックし、表示された「標準モジュール」ウィンドウに次のコードを貼り付けます。
VBA コード:セルの分割をキャリッジリターンに基づいて複数の行に分割Sub SplitCells() 'Update by Extendoffice Dim Rng As Range Dim WorkRng As Range On Error Resume Next xTitleId = "KutoolsforExcel" Set WorkRng = Application.Selection Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8) For Each Rng In WorkRng lLFs = VBA.Len(Rng) - VBA.Len(VBA.Replace(Rng, vbLf, "")) If lLFs > 0 Then Rng.Offset(1, 0).Resize(lLFs).Insert shift:=xlShiftDown Rng.Resize(lLFs + 1).Value = Application.WorksheetFunction.Transpose(VBA.Split(Rng, vbLf)) End If Next End Sub - 次に「F5」キーを押してこのコードを実行すると、分割したいデータ範囲を選択するよう促すプロンプトボックスが表示されます(スクリーンショット参照)。

- 「OK」をクリックすると、選択したデータがキャリッジリターンに基づいて複数の行に分割されます。

Kutools for Excel を使用
Kutools for Excel を使えば、わずか数ステップで簡単に分割処理を完了できます。以下にその手順を詳しくご案内します。
- 分割したいデータの範囲を選択してください。
- 「Kutools」>「結合と分割」>「複数行に分割する」をクリックしてください(スクリーンショット参照)。

- 「データを行に分割」ダイアログボックスで、「区切り文字」セクションから「改行」を選びましょう。

- 次に「OK」ボタンをクリックすると、すべてのセルがキャリッジリターンに基づいて複数の行に分割されます。

TEXTSPLIT 関数を使用する(Excel 365)
TEXTSPLIT 関数を使えば、セルの内容を動的に行に分割することも可能です。
結果を出力する空白セルに以下の数式を入力し、「Enter」キーを押すと、テキストが自動的に各行に分割されます(スクリーンショット参照)。
=TRIM(TEXTSPLIT(TEXTJOIN(CHAR(10),,A1:A4),,CHAR(10)))

- TEXTJOIN(CHAR(10),,A1:A4)
範囲 A1:A4 内のすべての値を改行(CHAR(10))で区切りながら1 つのテキスト文字列に結合します。空のセルは自動的に無視されます。 - TEXTSPLIT(...,,CHAR(10))
結合されたテキスト文字列を改行(CHAR(10))で分割し、個別の値からなる配列を返します。 - TRIM(...)
結果として得られる配列内の各値から、先頭および末尾の余分なスペースを削除します。
各方法には、Excel のバージョンやユーザーの習熟度に応じたメリットがあります。最適なアプローチを選ぶことで、要件に合わせて簡単にデータを操作できます!さらに多くのExcel のヒントやテクニックを知りたい方は、当社ウェブサイトで数千ものチュートリアルをご覧いただけます。ご一読いただき、誠にありがとうございます。今後も役立つ情報をどんどんお届けしてまいります!
関連記事:
- 大きなテーブルを複数の小さなテーブルに分割
- 複数の列と数百〜数千行を含む大規模なExcel テーブルがある場合、それをより扱いやすい小さなテーブルに分割したくなるかもしれません。たとえば、特定の列の値に基づいてデータを分離したり、一定の行数ごとに分割したりする必要が生じることがあります。このチュートリアルでは、こうした作業を効率的にこなすためのステップ・バイ・ステップの方法をご紹介します。
- 1 行おきに列を分割
- たとえば、長いデータリストを以下のスクリーンショットのように1 行おきに2 つの列に均等に分割したい場合、Excel でこの作業を効率よく処理する方法はあるでしょうか?
- フルネームを名前と姓に分割
- 下図の最初のスクリーンショットのように、名簿が単一の列にまとまっているとします。この場合、フルネームを後のスクリーンショットのように、名・ミドルネーム・姓の各列に分割する必要があります。この課題を解決するための便利な方法をいくつかご紹介します。
- 1 つのセル内のテキストと数字で分割を2 つの列に分離
- テキストと数字が混在した文字列を含む列があり、以下のスクリーンショットのように、1 つのセル内のテキスト部分と数字部分をそれぞれ別のセルに分割したい場合、Excel では次のような方法でこのタスクを完了できます。
最高の Office 業務効率化ツール
| 🤖 | 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 日間のフル機能トライアル— 登録不要、クレジットカード不要
- ベストバリュー— 個別アドイン購入よりお得










