連載
特集
カテゴリー
タグ
メディア

Excelで「行」や「列」の順番を逆にする方法

Excelで「行」や「列」の順番を逆にする方法
Image: gomao / Shutterstock.com

MicrosoftのExcelは、データを分析したり、可視化したりするのに、絶大な力を発揮するソフトです。

そして自分のデータにとって最適な結果を得るには、適切なフォーマットでなければなりません。

時々、テーブルに入っているデータに出くわし、行と列の配列がうまくいかないことがあるかもしれません。行や列を完全に逆にしなければならないこともあります。

行や列のセルを手動で入れ替えるのは、かなり手間がかかります。

今回は、すべてのデータを再入力するのではなく、行と列を入れ替えたり、行や列を反転させる方法をお教えします。

列のセルの順番を逆にする方法

一見、列の上下を逆にするいい方法はないように思えます。

データを、値やアルファベット順(五十音順)で並べ替えることはできますが、Excelで列の順番を逆にすることはできません。

では、どうすればいいのでしょうか?

ひとつずつデータをコピー&ペーストしますか? それよりも、もっといい方法があります。

Excelで列のセルの順番を逆にするのは実は簡単です。この方法を使えば、ほんのいくつかの手順でできてしまいます。

  1. 順番を逆にしたいテーブルの左に列(インデックスとして使う列)を追加。
  2. その列の一番上から、テーブルの一番下まで、1から順番に数字を入れる。
  3. 列を選択し、「データ > 並べ替え」をクリック。先ほど追加して、数字を入れた列を選び、大きい数値から小さい数値に並べ替える「降順」を選んでクリックすればOK。
Excel2020-03-1010.49.45
Screenshot: Excel

これで列のセルの順番は入れ替わりました!

Excelで列を編集したい時(英文)には覚えておきたい便利な裏技です。

Excel2020-03-1010.52.02
Screenshot: 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には、これがうまくできる非常に便利な機能があるのです。

  1. 入れ替えたい列を選び、「Ctrl+C」キーを押す、もしくは「編集 > コピー」をする。
  2. クリックしてセルを開き、「編集 > 形式を選択して貼り付け」をクリック。
  3. 「行/列の入れ替え」を選ぶ。
Excel2020-03-109.42.06
Screenshot: Excel

これで、列と行が入れ替わります。

行が長くなるかもしれませんから、十分に余裕があるかを確認しましょう。

Excel2020-03-109.42.27
Screenshot: Excel

同じように、列を行に入れ替えることもできます。

選択範囲全体が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に欠かせない機能や式のレビュー(英文)などの記事も参考にしてみてください。


あわせて読みたい

PDFファイルをExcel形式やテキストに変換してくれるサービス【今日のライフハックツール】

知らないともったいない。GoogleやExcelのショートカットまとめ


Image: gomao / Shutterstock.com

Screenshot: Excel

Original Article: Excel Quick Tips: How to Flip Cells & Switch Rows or Columns by MakeUseOf

訳:的野裕子

swiper-button-prev
swiper-button-next