Excelには範囲内の行と列を入れ替えるTRANSPOSE関数が用意されています。ここではTRANSPOSE関数の機能と使い方について解説します。
関連リンク
Excelの機能で行と列を入れ替える方法
TRANSPOSE関数とは
ExcelのTRANSPOSE関数は、指定された範囲または配列の行と列を入れ替えます。垂直範囲を水平範囲に反転し、水平範囲を垂直範囲に反転します。
この関数の対応バージョンはExcel 2003以降です
TRANSPOSE関数の構文
- 配列:行と列の入れ替えを行うセル範囲または値の配列を指定します。
Excelのバージョンによる挙動の違い
TRANSPOSE関数はExcel 365以後とその前のバージョンで指定方法が異なってきます。Excel 365以後では左上のセルにTRANSPOSE関数を入力するとスピルで他のセルにも自動入力されますが、Excel 365以前のバージョンでは表の範囲を予め選択しておいてから数式入力をしcontrol + shift + enterで数式を決定して、マルチセル配列数式として入力する必要があります。
使用例1:Excel365以後のバージョンでの設定方法
Excel365以後のバージョンではセルにTRANSPOSE関数を指定すると指定範囲の行と列を入れ替えた範囲分のスピルデータが返ってきます。SPILLとは一つのセルに入力すると自動で複数セルにまたがって返却される仕組みです。返却範囲内に他のデータが入っていると#SPILLエラーを返します。
=TRANSPOSE(B2:D8)
結果 → 行と列が入れ替わった複数セル(SPILL)
使用例2:Excel365以前のバージョンでの設定方法
Excel365以前のバージョンの場合TRANSPOSE関数の設定方法が特殊です。下記に設定方法の手順について解説します。
手順1:行と列を入れ替えたあとのデータ分の範囲選択
数式を入力する前に予め行と列が入れ替わった後の範囲分を選択しておきます。この例の場合は行と列が入れ替わった後は3行と7列分となります。
手順2:TRANSPOSE関数の数式を入力
範囲を選択している状態で数式を入力します。自動で左上のセルに入力されます。
手順3:control + shift + Enterで数式を決定
上記で入力した数式を複数範囲に渡って適応したいので、control + shift + Enterで数式を決定します。そうするとマルチセル配列数式として複数セルに数式が入力されます。
{=TRANSPOSE(B2:D8)}
結果 → 行と列が入れ替わった複数セル(マルチセル配列数式)
関連リンク
Excelの機能で行と列を入れ替える方法
TRANSPOSE関数の要点
- TRANSPOSE関数で行と列を入れ替えたデータは書式設定は引き継がれません。書式設定は別途設定する必要があります。
- Excel 365以降ではSPILLを利用として簡易的に設定できますが、Excel 365以前ではマルチセル配列数式として入力する必要があります。
おすすめの解説動画
実践的なTRANSPOSE関数の使い方について解説しています。わかりやすく解説しているのでおすすめです。
ショートカットキーの練習できます
当サイトはショートカットキーの練習を実際の動きを確認しながら練習できる機能がついています。繰り返し指を動かして練習ができるので、ゲーム感覚で遊んでいくうちに自然とショートカットキーが使えるようになれます。ショートカットキーは暗記するよりも実際に手を動かして練習していったほうが習得が早くなるので、是非当サイトをブックマークに登録し定期的に練習してみてください。下記のSTARTキーを押下すると練習を始められます。
※推奨ブラウザ Google Chrome