ROW(ロウ)関数の使い方
関数概要
ROW(ロウ)関数は、参照したセルの行番号を知らせてくれる関数です。引数は省略することができ、その場合は現在位置の行番号を教えてくれます。
構文 | =ROW(参照) |
---|---|
使用例 |
=ROW(B2) =ROW() =ROW(B2:B6) |
[char no=”1″ char=”さえちゃん1”]ROW関数の使い道として、現在の行番号を取得してくれるので、これを利用して別の関数に組み込むことで応用が可能です。行番号を取得するROW関数に対して、列番号を出力するCOLUMN関数とセットで覚えておくといいでしょう。[/char]
動画解説
関数説明
シンプルに、現在位置の行番号を取得してみましょう。アクティブセルの番地は、セルC3です。
ROW関数は、[数式]タブ→関数ライブラリの[検索/行列]にあります。
ROW関数は引数を省略することで、現在位置を取得できます。
そのままOKボタンを押します。
このとおり、アクティブセルの位置は「C3」なので「3」行目を示す「3」が出力されました。
また、このようにセル参照でA1を指定すれば、「1」と出力されます。
さらに、範囲選択した参照になると……。
アクティブセルの位置からスピル機能が発動(2019年11月以降のMicrosoft365より)します。
ROW関数は、このように行番号を取得してくれる関数です。
さえちゃんのROW関数ワンポイントアドバイス
[char no=”4″ char=”さえちゃん3”]オートフィルでデータを流したとき、データの入れ替えが発生するとその連番は崩れてしまいます。表の中で連番が固定のとき、オートフィルで連続データを入力するのではなく、ROW関数を使って連番を表現すると便利です。[/char]
このように、IDをROW関数を使って連番を振ってみましょう。
数式内で「-2」としているのは、現在の位置を「1」として出力するためです。
あくまで一例と思ってください。顧客IDは、顧客名から抜けたら欠番を埋めるためにその分繰り上がる、というルールがあるとしましょう。
このデータの中で「乃木坂広告社」を消すとします。
通常のオートフィルで連続データを出力した場合、「4」が欠番となってしまいますが、ROW関数を使うことで自動的に連番を保持することができました。
このROW関数の性質を利用して、相対的に数字を割り振ることができるので、そのほかの関数にも応用できるケースはいくつかあります。
ただし、実際の業務でそのシーンが必要になるときは、数式がやたらと長くなってしまう傾向があるため、どうしてもこれしかない、というシーンで扱われることが多いこれまでの経験則です。
連続データは奇数・偶数の判定として扱われたり、VLOOKUP関数などで用いられる引数で、行番号や列番号指定でも相対的に数字を利用することができます。
組み合わせを挙げればたくさんあり、ここでの説明は逆に混乱を招きかねないので、事例紹介は割愛いたします。ROW関数は行番号を取得する関数だ、とだけ覚えることに集中してください。
関数ステータス
関数ライブラリの種類
検索/行列
数式の構文
=ROW(参照)
=ROW()ですとアクティブセルの行数ではなく式を入れたセルの行がでます。
アクティブセルの行数を表示する方法はないでしょうか?
コメントありがとうございます。
=ROW()-3 のように加算減算で位置調整をしたりするのが一般的ですが、
アクティブセルの行数を表示する方法、つまりアクティブセルを置いた場所に対して、行数を動的に取得する場合は、Excelマクロを作成する必要があります。
Sub GetActiveCellRow()
Dim num As Long
num = ActiveCell.Row
Range(“A1”).Value = num
End Sub
こんな感じでExcelマクロを作成してみてください。Range(“A1”)の個所に出力したいセル番地を指定していただければと思います。