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

Excelでセルの値を縦に分割するにはどうすればよいですか?

Author: Xiaoyang Last Modified: 2025-05-23

Excelで作業しているとき、単一の行または複数の行にある複数の値を縦のリストに変換する必要がある場合があります。これは特に、データが横方向に保存されているが、列形式で処理または分析する必要がある場合に便利です。

このガイドでは、セルの値を縦に変換するための3つの効率的な方法を紹介します:

Excelでセルの値を行に縦に分割する


数式(Excel 365)でセルの値を行に縦に分割する

Excel 365をお持ちの場合は、TEXTSPLIT、TEXTJOIN、およびTRANSPOSE関数を使用して、手動操作なしでセルの値を縦に変換できます。

次の数式を空白のセルにコピーして貼り付け、「Enter」キーを押すと、Excelはデータを複数の行に自動的に展開します。スクリーンショットをご覧ください:

=TRANSPOSE(TEXTSPLIT(TEXTJOIN(";", TRUE, A1:A4), ";"))
📝 注: 数式内の区切り文字(;)をデータに合わせて変更できます。

 split cells vertically with a formula

🔍 この数式の説明:
  1. TEXTJOIN(";", TRUE, A1:A4 ): セミコロン (;) で区切られたA1からA4までのセル内のテキストを1つの文字列に結合します。
  2. TEXTSPLIT(...): 結合された文字列をセミコロンを区切り文字として再度分割します。
  3. TRANSPOSE(...): 得られた縦の値リストを行に変換します(または元の配置によってはその逆)。
長所と短所:

長所:

  • ✔ 動的更新: ソースデータが変更されると、数式が結果を自動的に更新します。
  • ✔ 手動操作不要: 反復的な手動分割の必要性を排除します。
  • ✔ カスタマイズ可能な区切り文字: セミコロン (;) をカンマやスペースなどの任意の区切り文字に置き換えて、データに適合させることができます。

短所:

  • ✘ Excel 365でのみ利用可能で、古いExcelバージョンでは動作しません。

Kutools for Excelを使用してセルの値を行に縦に分割する

Excel 2019以前のバージョンを使用している場合、「Kutools for Excel」を使用できます。これは、データを簡単に変換および管理するための専用ツールを備えた強力なアドインです。「Split Data to Rows」機能を使用すると、必要な任意の区切り文字に基づいてセルの値をシームレスに縦に変換できます。

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

「Kutools for Excel」をインストール後、次のように操作してください:

  1. 「Kutools」>「Merge & Split」>「Split Data to Rows」をクリックしてください。スクリーンショットをご覧ください:
     Click Kutools > Merge & Split > Split Data to Rows
  2. 「Split Data to Rows」ダイアログボックスで、次の操作を指定します:
    • 分割したいセルを選択します;
    • 「Delimiter」セクションで、セル内容をどのように分割するかを定義する区切り文字を選択します。ここでは「セミコロン」を選択します。
    • 最後に「OK」ボタンをクリックします。
       specify the options in the dialog box

結果: データは縦の列に変換されます。
 split cells vertically with kutools

📝 注: この方法はデータを直接ソースエリアで分割するため、使用前に元のデータをコピーしてバックアップすることをお勧めします。
長所と短所:

長所:

  • ✔ すべてのExcelバージョン(2010、2013、2016、2019、2021、365)で動作します。
  • ✔ 複雑な数式やコーディングは不要です。
  • ✔ 幅広い区切り文字をサポートしています。
  • ✔ Kutoolsはデータ操作のために300以上のツールを提供し、他のタスクにかかる時間を節約します。

短所:

  • ✘ Kutoolsのインストールが必要です。

VBAコードを使用してセルの値を行に縦に分割する

上級ユーザーの場合、VBAはセルの値を縦に分割するプロセスを自動化する堅牢なソリューションを提供します。以下のVBAコードを使用すると、任意のカスタム区切り文字を使用してセルの内容を行に簡単に分割できます。

1. 「ALT」+「F11」キーを押して「Microsoft Visual Basic for Applications」ウィンドウを開きます。

2. 「Insert」>「Module」をクリックし、以下のコードを「Module」ウィンドウに貼り付けます。

VBAコード: 特定の区切り文字でセルの値を行に縦に分割する

Sub splitvertically()
'updatebyExtendoffice
    Dim xRg As Range
    Dim xOutRg As Range
    Dim xCell As Range
    Dim xTxt As String
    Dim xStr As String
    Dim xOutArr As Variant
    On Error Resume Next
    xTxt = ActiveWindow.RangeSelection.Address
    Set xRg = Application.InputBox("please select the data range:", "Kutools for Excel", xTxt, , , , , 8)
    If xRg Is Nothing Then Exit Sub
    Set xOutRg = Application.InputBox("please select output cell:", "Kutools for Excel", , , , , , 8)
    If xOutRg Is Nothing Then Exit Sub
    For Each xCell In xRg
        If xStr = "" Then
            xStr = xCell.Value
        Else
            xStr = xStr & ";" & xCell.Value
        End If
    Next
    xOutArr = VBA.Split(xStr, ";")
    xOutRg.Range("A1").Resize(UBound(xOutArr) + 1, 1) = Application.WorksheetFunction.Transpose(xOutArr)
End Sub

3. 次に「F5」キーを押してこのコードを実行すると、縦に分割したいセル値を選択するように促すポップアップボックスが表示されます。スクリーンショットをご覧ください:
 vba to select the data range

4. 「OK」ボタンをクリックすると、結果を配置するセルを選択するように促す別のボックスが表示されます。スクリーンショットをご覧ください:
 vba to select the output range

5. 「OK」ボタンをクリックすると、セルの値が区切り文字でリストに分割されます。スクリーンショットをご覧ください:
 vba to split the cells vertically

📝 注: 上記のコードでは、セミコロン ; を必要な他の区切り文字に変更できます。
長所と短所:

長所:

  • ✔ プロセスを自動化し、時間を節約
  • ✔ すべてのExcelバージョンで動作
  • ✔ 異なる区切り文字にカスタマイズ可能

短所:

  • ✘ VBAプログラミングの基本的な知識が必要
  • ✘ 初心者には少し複雑

Excelでセルの値を縦に変換することは、複数の方法で達成でき、それぞれ独自の利点があります。これらの方法を理解することで、特定のニーズに最適なアプローチを選択し、Excelでのワークフローを最適化することができます。初心者でも上級ユーザーでも、これらのツールと技術により、データをより効果的かつ効率的に扱うことができます。さらにExcelのヒントやコツを探求したい場合、当社のウェブサイトでは数千ものチュートリアルを提供しており、Excelをマスターするお手伝いをします

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

🤖 Kutools AI アシスタント: データ分析を革命化する: インテリジェント実行   |  コード生成  |  カスタム数式の作成  |  データを分析しグラフを生成  |  拡張機能を呼び出す
人気の機能: 重複を見つけてハイライトまたはマーキング   |  空白行を削除   |  データを失わずに列またはセルを統合   |   丸める ...
スーパーLOOKUP: 複数条件のVLookup    複数値のVLookup  |   複数シートの検索   |   ファジーマッチ ....
高度なドロップダウンリスト: ドロップダウンリストを迅速に作成   |  依存ドロップダウンリスト   |  マルチセレクトドロップダウンリスト ....
列管理: 特定の数の列を追加  |  列を移動  |  非表示列の可視ステータスを切り替え  |  範囲と列を比較 ...
注目の機能: グリッドフォーカス   |  デザインビュー   |   強化された数式バー    ワークブック & ワークシート管理   |  オートテキスト ライブラリ (Auto Text)   |  日付ピッカー   |  データの統合   |  セルの暗号化/復号化    リストで電子メールを送信   |  スーパーフィルター   |   特殊フィルタ (太字/斜体/取り消し線をフィルタリング...) ...
トップ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%向上させ、毎日数百回のマウスクリックを減らします!