行データを逆順に展開する:INDEXとROWS・ROW関数を使った便利な方法

はじめに

Excelでは、データを並び替えるための多くの方法があります。今回は、行方向に展開しているデータを別の場所に逆順で展開する方法について解説します。この処理は、Excelの「INDEX」と「ROWS」「ROW」関数を使うことで実現できます。

INDEX関数・ROWS関数・?

Excelの「INDEX」関数は、特定の行と列の交差点にある値を返す関数です。一方、「ROWS」関数は、特定の範囲内の行数をカウントする関数です。「ROW」関数は選択したセルの行番号を取得します。これらの関数を組み合わせることで、データを逆順に展開することが可能となります。

行データを逆順に展開する方法

以下の手順では、元のデータがB3:B9セルに存在し、このデータをD3:D9セルに逆順で展開する例を用います。

ステップ1: INDEX関数とROWS関数の組み合わせ

まず、D3セルに以下の数式を入力します。

=INDEX($B$3:$B$9, ROWS($B$3:$B$9)-(ROW(B3)-ROW($B$3)), 1)

この数式の各部分の説明は次の通りです:

  • INDEX($B$3:$B$9, ... , 1):この部分はB3:B9の範囲から特定の行の値を返します。ここでの第三引数「1」は列番号を示し、1列目を指定しています。第二引数には以下の説明にある通り、何番目のデータを表示させるか、を設定していきます。
  • ROWS($B$3:$B$9):この部分は範囲B3:B9内の行数を返します。今回の例では、行数は7となります。【甲】
  • (ROW(B3)-ROW($B$3)):この部分は現在の行番号から最初の行番号を引いた値を返します。最初の行番号は固定となるため絶対参照をつけています。初回(D3セル)では、結果は0となります。【乙】
  • 「【甲】-【乙】」で「下から○番目」の意味になります。

ステップ2: 数式のコピー

数式を入力したら、そのセル(D3)から逆順にデータを展開したい範囲まで(D3:D9)を選択し、Ctrl+D(MacではCommand+D)を押して数式を下にコピーします。

以上の手順により、B3:B9セルのデータがD3:D9セルに逆順で展開されます。

まとめ

Excelの「INDEX」関数と「ROWS/ROW」関数を使うと、行方向に展開しているデータを別の場所に逆順で展開することができます。これは、特定の条件に基づいてデータの順序を反転させる際に非常に役立つ方法です。

コメント