エクセルで行位置を知るにはROW関数、行数を知るにはROWS関数を使います。
また、列位置はCOLUMN関数、列数はCOLUMNS関数で知ることが出来ます。
現在の行番号を返すROW関数
エクセルで表作成などで連番を付けたい時はどうしていますか。
行見出しがあるので必要無い?数えればわかる?連番は1から手入力する?
もっと良い方法があるんです。
それではROW関数を使って表に連番を付けてみましょう。
関数が入っているセルの行番号を返すのがROW関数ですが、ちょっとした工夫で表の連番を付けることが出来ます。
左の表は、上から1,2,3…と入力するか、オートフィルを使って連番を入力しています。
そして右の表はROW関数を使って連番を入力しています。
ROW関数の引数は=ROW(参照)で参照としてセルの指定が出来ますが、省略することも可能で省略すると、関数が入力されているセルの行番号が返ってきます。
ROW関数のセル参照は単一セルです。セル指定すると指定されたセルの行番号が返ってきます。
参照にセル指定でそのセルの行番号が返ってきます。
参照の省略する場合は =ROW() で関数が入力しされた場所の行番号が返ってきますので、上右表の様に項目行がある場合=ROW()-1と項目分の行数をマイナスしています。
何故わざわざ行番にROW関数を使うのかというと行番を直接入力した時は途中の行を削除すると折角
連番で入力した行番に抜けが発生します。
その行番抜けをROW関数を使うことで防ぐことが出来ます。
上表は左が直接行番を入力した表から7行目を行削除した場合で、右がROW関数で行番を表示させた表から7行目を削除した場合です。
指定した範囲の行数を教えるROWS関数
続いてROWS関数の使い方です。ROWS関数の引数は=ROWS(配列)とROW関数とは若干の違いがあります
ROWS関数は引数で指定した配列内の行数を返します配列は一つのセル範囲で指定します。
前のROW関数で使った同じ表の列番をROWS関数で作成してみました。
実は私自身はこういった場合ROWS関数を使います
ROWS関数の方が項目が何行あるのかを判断する必要が無いことと、データ行より上の行数が変化しても対応出来るからです。
引数は配列といっても複数のセル範囲は指定できません。また、コピーすることを考え絶対参照と相対参照は使い分けて下さい。
現在の列番号や指定範囲の列数を数えるCOLUMN(S)関数
次のCOLUMN関数の解説ですが、実はROW関数と行か列の違いのみで使い方はほぼ同じですので省略
しようと思います。