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

Excel でマトリックス形式の表を3 列形式に変換するには?

著者Xiaoyang変更日

Excel でデータを扱う際、行と列の両方が見出しとして機能するグリッド形式(マトリックス形式)の表に頻繁に遭遇します。この形式は一部の分析では視覚的に有用ですが、データベースへのインポート、データの正規化、グラフ作成、高度な分析などのタスクを行うには、このマトリックスを「リスト」形式、つまり3 列形式の表に変換する必要があります。マトリックスを3 列形式(「アンピボット」されたデータとも呼ばれます)に変換することで、フィルタリング、集計、および他のデータツールとの連携が格段に容易になります。以下の例は、その変換を示しています:

Excelでマトリクス形式の表を3列のリストに変換した様子を示すスクリーンショット


ピボットテーブルを使用してマトリックス形式の表をリストに変換する

Excel には、マトリックス形式の表を直接3 列形式(列)に変換する組み込みコマンドはありません。しかし、ピボットテーブルウィザードを使えば、クロス集計されたマトリックスをフラットな表形式のデータに効率よく変換し、さらに分析しやすい形に整えることができます。この方法は小規模~中規模のデータセットに最適で、特に複雑なレポート構造をフラット化したいときに非常に有効です。ただし、大規模なデータセットやピボットテーブル操作に不慣れなユーザーにはあまり向いていません。

1Alt + Dを押した後、Pを押して、マトリックスを含むワークシートでピボットテーブルとピボットチャートウィザードを開きます。ウィザード内では:

  • 分析したいデータの場所はどこですか?の下で、複数の統合範囲を選択してください。
  • 作成したいレポートの種類は何ですか?の下で、ピボットテーブルを選択してください。

ピボットテーブルとピボットグラフウィザード - ステップ1/3ダイアログのスクリーンショット

2次へをクリックします。3 のステップ2aダイアログで、「ページフィールドを自分で作成する」を選択します:

ピボットテーブルとピボットグラフウィザード - ステップ2a/3ダイアログのスクリーンショット

3次へをクリックします。ステップ3 の2bで、範囲選択ボタンボタンをクリックし、行および列のヘッダーを含むマトリックス全体のデータ範囲を選択します。追加をクリックして、その範囲をすべての範囲リストに挿入してください。選択した範囲がマトリックス全体を確実にカバーしていることをご確認ください。

ピボットテーブルとピボットグラフウィザード - ステップ2b/3ダイアログのスクリーンショット

4次へをクリックします。ステップ3で、ピボットテーブルを新しいワークシートに配置するか、特定のセルに配置するかを選択します:

ピボットテーブルとピボットグラフウィザード - ステップ3/3ダイアログのスクリーンショット

5完了をクリックすると、Excel がマトリックスを要約するピボットテーブルを自動的に生成します。デフォルトでは、交差ポイントに集計の合計が表示されます。このタスクではピボットテーブルの構造を調整する必要はありません。次の手順に進んでください:

マトリクス形式の表からExcelで作成されたピボットテーブルのスクリーンショット

6。行と列の合計が交差するセル(例:セル F22)をダブルクリックすると、Excel は新しいシートを作成し、各行が一意の行ヘッダーと列ヘッダーの組み合わせに対応する値を示す3 列形式のデータを表示します。

合計セルをダブルクリックしてマトリクスを3列のリストに変換した結果の表のスクリーンショット

7。最後に、新しい表を選択して右クリックし、テーブル > 範囲に変換を選択してください。これでテーブルの書式が解除され、編集可能なシンプルなリストが残ります。

ピボットテーブルを標準のリストに変換する「範囲に変換」オプションを示すスクリーンショット

ヒント:マトリックスが頻繁に変更される場合は、この3 列形式(列)を更新するために手順を繰り返す必要があります。この方法は静的なデータに最適です。また、マトリックスに空白セルや結合されたセルが含まれている場合、この手法を使用する前に若干のクリーンアップが必要になることがあります。


VBA コードを使用してマトリックス形式の表をリストに変換する

自動化を好む方やこの変換を繰り返し行いたい場合は、VBA マクロを使って任意のマトリックス形式の表を構造化された3 列形式に素早く変換できます。この方法は、大規模なデータセットや多様なレイアウトに対して特に効果的で、手動での書式設定を省略することが可能です。VBA スクリプトの実行に慣れているユーザーに最適です。

1Alt + F11を押して、Microsoft Visual Basic for Applicationsエディターを開きます。

2。エディターで、挿入 > モジュールをクリックして新しいモジュールを作成し、以下のコードをモジュールウィンドウに貼り付けてください。

📜 VBA コード:マトリックスをリストに変換

Sub ConvertTable()
' Updated by Extendoffice
Dim Rng As Range
Dim cRng As Range
Dim rRng As Range
Dim xOutRng As Range
xTitleId = "KutoolsforExcel"
Set cRng = Application.InputBox("Select your Column labels", xTitleId, Type:=8)
Set rRng = Application.InputBox("Select Your Row Labels", xTitleId, Type:=8)
Set Rng = Application.InputBox("Select your data", xTitleId, Type:=8)
Set outRng = Application.InputBox("Out put to (single cell):", xTitleId, Type:=8)
Set xWs = Rng.Worksheet
k = 1
xColumns = rRng.Column
xRow = cRng.Row
For i = Rng.Rows(1).Row To Rng.Rows(1).Row + Rng.Rows.Count - 1
    For j = Rng.Columns(1).Column To Rng.Columns(1).Column + Rng.Columns.Count - 1
        outRng.Cells(k, 1) = xWs.Cells(i, xColumns)
        outRng.Cells(k, 2) = xWs.Cells(xRow, j)
        outRng.Cells(k, 3) = xWs.Cells(i, j)
        k = k + 1
    Next j
Next i
End Sub

3F5キーを押すか、実行をクリックしてマクロを実行してください。その後、必要な選択をガイドする一連のプロンプトが表示されます:

ステップ1:列ラベル(通常はマトリックスの最上行)を選択します:

列ラベルを選択するよう促すプロンプトのスクリーンショット

ステップ2:行ラベル(通常はマトリックスの最初の列)を選択します:

行ラベルの選択を示すスクリーンショット

ステップ3: 実際のマトリックスデータ範囲(行と列の見出しを除く)を選択します:

マトリクスデータ範囲を選択するよう促すプロンプトのスクリーンショット

ステップ4: 変換後の3 列形式(列)を出力するセルを選択します。空白のセルまたは新しいワークシートの使用をおすすめします:

変換後の3列リストの出力先セルの選択を示すスクリーンショット

ステップ5:OKをクリックすると、マトリックスがフラットな3 列形式(列)に変換されます。

⚠️ 注意点とヒント:

• マトリックスのデータ範囲には、列見出しや行見出しを含めないでください。

• マトリックスに結合済みのセルが含まれている場合は、エラーを回避するため、マクロ実行前に結合を解除してください。

• エラーが発生した場合は、選択範囲を再度ご確認いただき、正しく対応していることをご確認ください。


Kutools for Excel でマトリクス形式の表をリストに変換

上記の方法は効果的ですが、Excel 初心者には煩雑で難しく感じられるかもしれません。より迅速で使いやすい解決策をお探しの方には、Kutools for Excelがこの目的のために特別に開発した専用ユーティリティ「テーブルの次元を変換」がおすすめです。

このツールは、マトリクス形式の表を頻繁に変換する必要がある方や、一括処理を効率化したい方に最適です。必要に応じて、フォントや塗りつぶし色、数式など、元の書式をそのまま保持することも可能です。ただし、Kutools はサードパーティ製アドインであり、インストールが必要な点が唯一の欠点かもしれません。それでも、Excel で日常的にデータ整形を行う方にとっては、非常に強力な選択肢となるでしょう。

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

手順:

1。Kutools をインストール後、Kutoolsタブに移動し、範囲をクリックして、テーブルの次元を変換を選択します。

リボン上のKutoolsタブにある「表の次元を転置」オプションのスクリーンショット

2テーブルの次元を変換ダイアログボックスで:

  • (1)二次元テーブルを一次元テーブルに変換を、変換タイプセクションから選択します。
  • (2)範囲選択アイコンソース範囲の横にあるボタンをクリックし、マトリックステーブルを選択します。
  • (3)範囲選択アイコン結果範囲の横にあるボタンをクリックして、出力先を指定してください。

部分的な変換や誤った結果を防ぐため、ヘッダーとデータの両方を含むマトリクス全体を選択してください。

「表の次元を転置」ダイアログのスクリーンショット

3OKをクリックすると、マトリクスは即座に3 列形式のリストに変換され、元のセルの書式が可能な限り保持されます。

Kutools for Excelを使用してマトリクス表を3列のリストに変換した結果のスクリーンショット

ヒント:この機能は逆の操作、つまりフラットなリストを2 次元マトリックスに変換することもサポートしています。レポートの再構築やクロス集計分析用のデータ準備に最適です。詳しくは以下をご覧ください:リストを2 次元二次元テーブルに変換する方法。

➤ テーブルの次元を変換機能の詳細はこちら

⏬ 今すぐ Kutools for Excel を無料でダウンロードして、ぜひお試しください!


Excel 数式でマトリクス形式の表をリストに変換

マトリクスの変更に応じて3 列形式のリストを動的に更新したい場合、数式ベースのアプローチが特に有効です。INDEX 関数、ROW 関数、COLUMN 関数、およびCOUNTA 関数を組み合わせることで、データを手動でアンピボットできます。この方法では VBA やアドインは不要なため、マクロや外部ツールを使いたくないユーザーに最適です。ただし、通常は配列数式として入力するか、系統的に下方向または横方向にドラッグする必要があるため、数式の参照には細心の注意を払う必要があります。中規模のマトリクスや、リストを常にソースデータの変更にリアルタイムで反映させたい場面で、この方法は最も実用的です。

以下のデータ範囲があると仮定します。

  • 行ラベルはセルA2:A10にあります。
  • 列ラベルはセルB1:J1にあります。
  • マトリックスの値はセルB2:J10にあります。

1。新しいワークシートを作成するか、既存のシートの空き領域から始めます。セルL2に、行ラベルを抽出する次の数式を入力してください。

=INDEX($A$2:$A$10,INT((ROW(A1)-1)/COUNTA($B$1:$J$1))+1)

2。セルM2に、対応する列ラベルを抽出する次の数式を入力してください。

=INDEX($B$1:$J$1,MOD(ROW(A1)-1,COUNTA($B$1:$J$1))+1)

3。セルN2に、マトリクスから値を抽出する次の数式を入力してください。

=INDEX($B$2:$J$10,INT((ROW(A1)-1)/COUNTA($B$1:$J$1))+1,MOD(ROW(A1)-1,COUNTA($B$1:$J$1))+1)

4。セルL2:N2を選択し、フィルハンドルを下方向にドラッグします。終了位置は行数×列数(この例では9 行×9 列=合計81 行)です。

✅ ヒント:

  • すべての範囲を実際のデータ構造に合わせて調整してください。
  • IF 関数とISBLANK 関数を使えば、必要に応じて空白行をフィルターから簡単に除外できます。
  • 自動的に拡張される動作が必要な場合は、OFFSET 関数や動的名前付き範囲の利用をご検討ください。
  • この方法は、マトリックスのサイズが固定されていて、データ量が中程度の場合に最も実用的です。

ℹ️ 追加の注意点:

  • メリット:数式は常に有効な状態を保ち、マトリックスの変更を自動的に反映します。VBA やアドインは一切不要です。
  • デメリット:大規模なマトリックスではワークブックのパフォーマンスが低下するおそれがあるため、慎重な設定が求められます。

Kutools for Excel でマトリクス形式の表をリストに変換するデモ

 
Kutools for Excel:300 個を超える便利なツールがすぐそこへ!AI 搭載の機能で、よりスマートでスピーディーな作業をぜひお楽しみください!今すぐダウンロード!

最高の 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 日間のフル機能トライアル— 登録不要、クレジットカード不要
  • 最高のお得感— 個別アドイン購入よりお得