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

Excelで配列テーブルをリストテーブルに迅速に変換するにはどうすればよいですか?

Author: Sun Last Modified: 2025-08-06

配列テーブル(クロス表)があると仮定すると、この配列テーブルをリストテーブルに変換するのは難しい作業ではないかもしれません。データを一つずつ入力することで変換できます。しかし、複数の配列テーブルをリストテーブルに変換する必要がある場合、手動での方法は適切な解決策とは言えません。このチュートリアルでは、Excelで配列テーブルをリストテーブルに迅速に変換できる便利な方法を紹介します。

ピボットテーブルを使用して配列テーブルをリストテーブルに変換

VBAを使用して配列テーブルをリストテーブルに変換

Kutools for Excelを使用して配列テーブルをリストテーブルに変換 good idea3


arrow blue right bubble ピボットテーブルを使用して配列テーブルをリストテーブルに変換

ピボットテーブルを利用して配列テーブルをリストに変換し、それを範囲としてコピーすることができます。

1. Alt + D を同時に押してから、 P キーを押して「 ピボットテーブルおよびピボットチャートウィザード 」ダイアログを有効にし、「 複数の統合範囲 」と「 ピボットテーブル 」オプションをチェックします。スクリーンショットをご覧ください:
A screenshot of the PivotTable and PivotChart Wizard dialog in Excel

2. 「次へ」をクリックしてウィザードのステップ 2aに進み、「ページフィールドを作成します」オプションをチェックします。スクリーンショットをご覧ください:
A screenshot of the Step 2a page fields options in the PivotTable Wizard

3. 「 次へ 」をクリックして ウィザードのステップ 2bに進み、配列範囲を選択して「 すべての範囲 」リストに追加します。スクリーンショットをご覧ください:
A screenshot of selecting the array range in Step 2b of the PivotTable Wizard

4. 「 次へ 」をクリックして最後のステップに進み、必要なオプションをチェックします。スクリーンショットをご覧ください:
A screenshot of the final step of the PivotTable Wizard options

5. 「 完了 」をクリックすると、ピボットテーブルが作成されます。「 総計」の交差セルに移動し、ダブルクリックすると、新しいワークシートにリスト形式のピボットテーブルが作成されているのが確認できます。スクリーンショットをご覧ください:
A screenshot of the PivotTable with the Grand Total cell double-clicked

6. リスト形式のピボットテーブルを選択し、右クリックして「 テーブル > 範囲に変換 」を選択します。スクリーンショットをご覧ください:
A screenshot of the context menu to convert PivotTable to range in Excel

これで配列テーブルがリストテーブルに変換されました。
A screenshot of the list table created from the array table in Excel


arrow blue right bubble VBAを使用して配列テーブルをリストテーブルに変換

以下のようなVBAを使用して配列テーブルをリストテーブルに変換できます。以下の手順を行ってください:

1. Alt + F11 を押して Microsoft Visual Basic for Applications ウィンドウを有効にします。

2. 「挿入」>モジュールをクリックし、下記のVBAコードを新しいモジュールウィンドウに貼り付けます。

VBA: 配列テーブルをリストに変換

Sub ConvertTableToList()
'UpdatebyEntendOffice20160429
    Dim I As Long
    Dim xCls As Long
    Dim xRg As Range
    Dim xSaveToRg As Range
    Dim xTxt As String
    On Error Resume Next
    xTxt = ActiveWindow.RangeSelection.Address
    Set xRg = Application.InputBox("Select Array Table:", "Kutools for Excel", xTxt, , , , , 8)
    If xRg Is Nothing Then Exit Sub
    Set xSaveToRg = Application.InputBox("Select a range(cell) to put the list table", "Kutools for Excel", , , , , , 8)
    If xSaveToRg Is Nothing Then Exit Sub
    Set xSaveToRg = xSaveToRg.Cells(1)
    xCls = xRg.Columns.Count - 1
    Application.ScreenUpdating = False
    For I = 1 To xRg.Rows.Count
        xSaveToRg.Offset((I - 1) * xCls).Value = xRg.Cells(I, 1).Value
        xSaveToRg.Offset((I - 1) * xCls, 1).Resize(xCls).Value = _
                        Application.WorksheetFunction.Transpose(xRg.Cells(I, 2).Resize(1, xCls))
    Next
    Application.ScreenUpdating = True
End Sub

3. そして F5 キーを押してVBAを実行すると、ヘッダーを除いた配列テーブルを選択するためのダイアログが表示されます。スクリーンショットをご覧ください:
A screenshot of selecting the array table excluding headers in Excel

4. 「 OK 」をクリックして次のダイアログに進み、リストテーブルを出力するセルを選択します。スクリーンショットをご覧ください:
A screenshot of selecting a cell to output the list table in Excel

5. 「 OK」をクリックすると、配列テーブルがリストに変換されます。
A screenshot of the converted list table in Excel

ヒント:

上記のセルに基づいて空白セルを埋めたい場合は、以下のように操作してください:

1. Kutools for Excel -- 便利なツールをインストールしてから、「 Kutools > 挿入 > 空白セルを埋める」をクリックします。スクリーンショットをご覧ください:
A screenshot of the Kutools Fill Blank Cells option

2. 「 空白セルを埋める 」ダイアログで、「 基準値に基づく 」と「 下方向 」オプションをチェックします。スクリーンショットをご覧ください:
A screenshot of the Fill Blank Cells dialog

3. 「 OK 」または「 適用」をクリックすると、空白セルが上記の値に基づいて埋まります。
A screenshot of filled blank cells in an Excel list table

空白セルを埋めるについての詳細はこちらをクリックしてください。


arrow blue right bubble Kutools for Excelを使用して配列テーブルをリストテーブルに変換

上記の方法が十分簡単でない場合、ここでは便利なツールである Kutools for Excel をご紹介します。その「 テーブルの次元を変換」機能を使用すると、配列テーブルとリストテーブル間を簡単に迅速に変換できます。

Kutools for Excelについて、AI 🤖を搭載し、300以上の便利な機能を提供して作業を簡素化します。

無料で Kutools for Excel をインストールした後、以下の手順を実行してください:

1. 変換したい配列テーブルを選択し、「 Kutools > 範囲 > テーブルの次元を変換」をクリックします。スクリーンショットをご覧ください:
A screenshot of the Kutools Transpose Table Dimensions option in Excel

2. 次に「 テーブルの次元を変換 」ダイアログで、「二次元テーブルを一次元テーブルに変換」オプションをチェックし、リストテーブルを出力する範囲を選択します。スクリーンショットをご覧ください:
A screenshot of the Transpose Table Dimensions dialog

3. 「 OK」をクリックすると、配列テーブルがリストテーブルに変換されます。
A screenshot of the list table created from the array table using Kutools

テーブルの次元を変換についての詳細はこちらをクリックしてください。

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

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