Excelで「行」や「列」の順番を逆にする方法
- カテゴリー:
- KNOWLEDGE

MicrosoftのExcelは、データを分析したり、可視化したりするのに、絶大な力を発揮するソフトです。
そして自分のデータにとって最適な結果を得るには、適切なフォーマットでなければなりません。
時々、テーブルに入っているデータに出くわし、行と列の配列がうまくいかないことがあるかもしれません。行や列を完全に逆にしなければならないこともあります。
行や列のセルを手動で入れ替えるのは、かなり手間がかかります。
今回は、すべてのデータを再入力するのではなく、行と列を入れ替えたり、行や列を反転させる方法をお教えします。
列のセルの順番を逆にする方法
一見、列の上下を逆にするいい方法はないように思えます。
データを、値やアルファベット順(五十音順)で並べ替えることはできますが、Excelで列の順番を逆にすることはできません。
では、どうすればいいのでしょうか?
ひとつずつデータをコピー&ペーストしますか? それよりも、もっといい方法があります。
Excelで列のセルの順番を逆にするのは実は簡単です。この方法を使えば、ほんのいくつかの手順でできてしまいます。
- 順番を逆にしたいテーブルの左に列(インデックスとして使う列)を追加。
- その列の一番上から、テーブルの一番下まで、1から順番に数字を入れる。
- 列を選択し、「データ > 並べ替え」をクリック。先ほど追加して、数字を入れた列を選び、大きい数値から小さい数値に並べ替える「降順」を選んでクリックすればOK。

これで列のセルの順番は入れ替わりました!
Excelで列を編集したい時(英文)には覚えておきたい便利な裏技です。

Excelでショートカットを使うのが好きな人は、この方法をクリックひとつで使うこともできます。
このショートカットは、一番左の列を昇順(小さい数値から大きい数値へ)でも、降順(大きい数値から小さい数値へ)でも、素早く並び替えるものです。
ここで大事な鍵となるのはインデックス列です。
データの順番を逆にしたら、インデックス列は削除できるので、そうすれば次の作業に移る準備完了です。
これはExcelのテーブルで使えるやり方ですが、順番を逆にしたい列がいくつあっても使えます。
ExcelでVisual Basic(マクロ)を使う(英文)人は、以下のコードを使っても同じことができます。
順番を逆にしたい列を選んで、このマクロを使いましょう。
Sub FlipColumns()
Dim vTop As Variant
Dim vEnd As Variant
Dim iStart As Integer
Dim iEnd As Integer
Application.ScreenUpdating = False
iStart = 1
iEnd = Selection.Columns.Count
Do While iStart
vTop = Selection.Columns(iStart)
vEnd = Selection.Columns(iEnd)
Selection.Columns(iEnd) = vTop
Selection.Columns(iStart) = vEnd
iStart = iStart + 1
iEnd = iEnd - 1
Loop
Application.ScreenUpdating = True
End Sub
VBAのマクロは非常に便利ですが、使い慣れていない人は、データを並び替える裏技を使えば、簡単に同じことができます。
VBAに興味がそそられた人は、VBAのマクロを書くための初心者用チュートリアル(英文)でさらに学ぶことができます。
列と行を入れ替える方法
列の順番を逆にするのはデータ分析に使えますが、データを操作できる方法は他にもあります。
列と行を入れ替えたいと思ったことはありませんか?
つまり、列のデータを行に、行のデータを列に入れたいということです。
テーブルを逆にするのと同じように、情報をひとつずつコピー&ペーストするのはいい方法ではありません。Excelには、これがうまくできる非常に便利な機能があるのです。
- 入れ替えたい列を選び、「Ctrl+C」キーを押す、もしくは「編集 > コピー」をする。
- クリックしてセルを開き、「編集 > 形式を選択して貼り付け」をクリック。
- 「行/列の入れ替え」を選ぶ。

これで、列と行が入れ替わります。
行が長くなるかもしれませんから、十分に余裕があるかを確認しましょう。

同じように、列を行に入れ替えることもできます。
選択範囲全体が90度回転するように、まとまったデータを入れ替えることもできます。
行の順番を逆にする方法
列の順番を逆にする方法と、列と行を入れ替える方法がわかったところで、今度は行の順番を逆にする方法です。
Excelの行のセルを逆にするには、これまで学んだ2つの方法を一緒に使います。
Excelは行の並べ替えには対応していないので、まずは「入れ替え」を使って行と列を入れ替えなければなりません。行と列を入れ替えたら、最初に学んだ列の順番を逆にする方法を使います。
列の順番を逆にして、もう一度列と行を入れ替えれば、行全体の順番が逆になります。少し回りくどいやり方ではありますが、うまくいきます。
もっと簡単にやりたい場合は、またもやVisual Basicを使えば同じことができます。先ほどと同じマクロを実行するだけで、列の文字列と行の文字列がすべて入れ替わります。
Sub FlipRows()
Dim vTop As Variant
Dim vEnd As Variant
Dim iStart As Integer
Dim iEnd As Integer
Application.ScreenUpdating = False
iStart = 1
iEnd = Selection.Rows.Count
Do While iStart
vTop = Selection.Rows(iStart)
vEnd = Selection.Rows(iEnd)
Selection.Rows(iEnd) = vTop
Selection.Rows(iStart) = vEnd
iStart = iStart + 1
iEnd = iEnd - 1
Loop
Application.ScreenUpdating = True
End Sub
列や行の順番を逆にしたい理由
Excelはデータ分析で幅広く使われています。
データの分析や可視化は、あらゆる面で決断を下す際の重要な要素となっています。
コンピューター科学だけでなく、データ分析は以下の分野でも使われています。
- ビジネス
- マーケティング
- スポーツ
- 医療
- 不動産
- 機械学習
データを分析するのに使われた情報が、自分の使いたいように配列されていないことはよくあります。
最高の結果を得るには、処理するデータを適切に配列する方法を知らなければなりません。
SQLのようなデータベースは、データを使うのにピッタリですが、自分のためにデータを整理したり、配列してくれたりしません。Excelならそれができ、データはExcelファイルやCSVファイルになります。
列や行の順番を逆にする方法を知っていれば、データを最大限活用するのに一歩近づきます。
Excelのデータを簡単に逆にできる
Excelの列や行のデータを逆にしなければならない場合は、上記の方法のどれかを使えば、かなり時間が節約できます。
また、定期的にそれをやる必要がある場合は、Visual Basicのマクロを使えば、さらに時間を節約できます。これで、自分に合ったデータで作業に入る準備が整いました。
当然ながら、Excelでできることは他にもたくさんあります。すごいことができる驚くようなExcelの式(英文)や、Excelに欠かせない機能や式のレビュー(英文)などの記事も参考にしてみてください。
あわせて読みたい
Image: gomao / Shutterstock.com
Screenshot: Excel
Original Article: Excel Quick Tips: How to Flip Cells & Switch Rows or Columns by MakeUseOf
訳:的野裕子
ランキング
- 1
- 2
- 3
- 4
- 5