応募する

応募する

Tel.03-4500-9361 / 受付時間:平日10:00~19:00

こちらは全て株式会社エージェントゲートでの採用・募集となります。

Excel(エクセル)のROW関数の使い方解説|応用する方法も解説

Excel(エクセル)に備わっているさまざまな関数の中に、ROW関数というものがあります。

行番号を出力できる関数ですが、いったいどのような使い道があるのでしょうか?

この記事では、ROW関数とは何か、使い方や応用方法、上手くいかないときの対処法を解説します。ROW関数によく似たCOLUMN関数についても解説しているので、ぜひ参考にしてください。

ROW(ロー)関数とは?

ROW関数は行番号を出力することができる関数です。Excelにおいて、関数と聞くと難しい要素が多く、苦手意識を抱くかもしれません。しかし、ROW関数はいたってシンプルで、簡単に扱える関数なので安心してください。

関数を難しくしてしまう要素の1つに、引数の存在があります。通常、関数はかっこの中にセルの番地や等号、不統合、プラスマイナス、数字といったさまざまなものを指定します。これを引数といい、関数ごとに引数の取り方が異なるため、難しく考えてしまうのです。

ROW関数が簡単だと言われる理由は、引数があってもなくても正常に動くからです。行番号を出力するだけであれば、かっこの中に引数は必要ありません。Excel初心者の方でも簡単に覚えられます。

ROW関数の数式

ROW関数は下記のようにセルに入力します。

=ROW()

例えばA2セルに=ROW()と入力すれば「2」と表示されます。これが引数なしの挙動です。

一方、かっこの中にセルを指定する、別名、引数を指定すると、指定したセルの行数が表示されます。下記のような数式を入力すると、どのように表示されるでしょうか?

=ROW(C5)

答えは「5」です。ROW関数で引数を指定すると、どのセルに数式を入力しても引数で指定したセル番地の行数が表示されます。

<h3>ROW関数の使い方・使用例</h3>

ROW関数は行数を表示することから、リストの番号を振る際に役立ちます。例えば1行目から10行目まで入力された項目にナンバーを振る場合です。=ROW()を使えば1,2,3,4〜10と、簡単に出力できます。

番号なら直接1,2,3と入力して、オートフィルで埋めればよいのではないかと思うかもしれませんが、実は数字を直接入れるとメンテナンス性が悪くなります。

試しに4行目を削除してみましょう。5行目以下が上にずれてきます。ROW関数を使った方は、番号が1,2,3,4と正常に並びます。しかし、数字を直接入力してオートフィルで作成した方は、1,2,3,5と表示されてしまうのです。これからも運用し続けるシートで、500行あったとしたら、どちらの方が便利だと思いますか?ROW関数の方ですよね。数字のオートフィルで500行も管理するとなると、労力は計り知れません。

また、ROW関数は数式を工夫することで、行数の開始位置を変えられます。例えば下記のシチュエーションで役立ちます。

3行目から表がスタートしていて、横に番号を振りたい場合です。=ROW関数の引数に直接開始位置となるセル番号を入力しても良いですが、下記の数式のように、行数をマイナスすることで、引数なしでも表現できます。

=ROW()-3

かっこの後ろに数式を記載するのがポイントで、かっこの前や中に数式を入れるとエラーになってしまいます。引数はかっこの中に書くものという印象があるため、この点は混同しやすいです。基本的には引数にセル番地を入力した方が、予期せぬエラーは防げます。

ROW関数の使い分け

ROW関数は引数が有っても無くても正しく挙動します。どうやって使い分けるのか、どちらの方がおすすめなのでしょうか?

単純に行数を表示するだけなら引数なし、何か他の関数と組み合わせて使う際や、複雑な数式を使う際は引数ありで使い分けるのがおすすめです。

引数なしは単純にオートフィルで行数を指定するときには早くて便利です。引数を使わないので関数でよくありがちな引数指定でエラーになることもありません。ただし、複雑な数式で条件の細かい表現をしたい場合は引数なしだと想定通りの挙動にならない、エラーを表示するといった不具合が発生します。そのため、複雑な処理を行う場合は、引数でセル番地を指定した方が確実です。

また、Excelのシートを自分だけでなく、他の人も利用する場合は、ROW関数に引数が合った方が、製作者の意図が伝わりやすく、ミスを防止できます。

C5セルから表の項目に対する番号を振りたいとき、引数ありでセル番地が入力されているのと、引数なしで入力されているのとでは、受け手の印象が大きく変わるからです。

きちんとセル番地を指定していれば、「このExcelシートの製作者は表のスタート位置を考慮してROW関数をC5セルから記入し始めている」と受け取ってもらえます。しかし、セル番地を書かず、引数なしで数式を入力すると、行の削除やセルの削除が行われた際に、「この位置から始めればよいのだろうか」と疑問が生じてしまいます。

メンテナンス性も含めて、セル番地を指定したほうがメリットは大きいです。

ROW関数の応用方法

ここからはROW関数の応用方法を解説します。基本的な使い方を理解した方は、ぜひ参考にしてください。

ROW関数と直接数字を入力する工程の差異

下記のように、7人の生徒と出席番号が書かれたエクセルシートがあったとします。苗字と名前のセルがあり、CONCAT関数でセル内のテキストを結合してフルネームになる仕組みです。ROW関数と数字をオートフィルで埋めるのでは、どこに差が生じるのかを説明します。

例えば、4番の生徒が転校してしまうため、出席簿のシートから名前を消す作業が必要になりました。この時、ROW関数を使っていれば行ごと消しても問題ありません。行数はきちんと1,2,3,4,5…と表示され、他の関数の参照先になっていても大丈夫です。しかし、数字を直接入力してオートフィルで出席番号を振った場合、行ごと削除してしまうと、1,2,3,5と出席番号4番が飛ばされてしまいます。そこで名前のセルを削除して、下にあるセルを上にズラそうとすると、参照している関数があった場合にエラーが出てしまいます。メンテナンス性の面から、ROW関数は非常におすすめです。

表の項目の書き換えに便利

上の画像を見てみましょう。カラオケ、ボーリング、ビリヤード、ダーツが遊べるアミューズメント施設の料金表です。左側の図では大人料金と子供料金が連続して表示されているので、視認性が悪くなっています。そこで右側の図のような、すっきりした表に料金表の内容を移すことにしました。

全部で8つの料金を、ひとつひとつコピー&ペーストしていくのは面倒ですよね。まして、これが100個あれば、大幅に時間を取られるでしょう。

このような場合に使えるのが、ROW関数とINDEX関数の組み合わせです。INDEX関数は指定したセルの中身を、そのまま出力してくれる関数です。ROW関数とINDEX関数を組み合わせると、内容の入れ替え作業が効率化されます。

まずは着目すべきポイントを解説しましょう。左図の大人料金は、それぞれ4行目、6行目、8行目、10行目に入力されていることがわかります。ということは、偶数の行だけ出力できれば、右の図の大人料金にピッタリ当てはまると思いませんか?

実はROW関数は引き算だけでなく、掛け算を使った表現が可能です。偶数は1×2=2、2×2=4、3×2=6という風に、数字に2を掛けていくことで表現できます。この特性を活かせば、=ROW()*2という形で表現できるのです。

ただ、このままでは単純に行数が2倍されて表示されるだけなので、料金は表示できません。そこでINDEX関数を利用します。各種目の1時間あたりの料金はC列に入っているので、C列で料金が最初に始まるセルから、終わりのセルまで範囲選択します。INDEX関数のセル範囲指定で、ズレが生じないように、絶対参照にしましょう。

さらに4行目からのスタートにしたいので、ROW()に工夫を加えます。2をかけて4になるようにしたいので、C2というセル番地を引数に取ってみましょう。C2は2行目なので、2×2で4行目からスタートできるようになります。引数を取らない場合は、ROW関数のかっこの後ろに-2を付け足せば同様の処理ができます。

最終的な式は以下のようになりました。

引数ありの場合:=INDEX($C$1:$C$11,(ROW(C2))*2)

引数なしの場合:=INDEX($C$1:$C$11,(ROW()-2)*2)

上記の式をG4セルに入力すると、1000という数字が表示されました。縦方向にドラッグして、オートフィルで大人料金を埋めてみましょう。きれいに大人料金が抽出されています。

一方、子供料金は奇数行ですが、どのような数式で表現すれば良いのでしょうか?左図のデータを見ると、子供料金は大人料金の1行下に位置することがわかります。ということは、上記の式にプラス1すれば良いのです。数式は以下のようになります。

引数ありの場合:=INDEX($C$1:$C$9,(ROW(C2))*2+1)

引数なしの場合:=INDEX($C$1:$C$9,(ROW()-2)*2+1)

COLUMN(カラム)関数とは

ROW関数は、該当する行数を表示する関数でした。ということは列の数を表示する関数もあるのです。それがCOLUMN(カラム・コラム)関数です。基本的にCOLUMN関数はROW関数と同様の扱い方をします。

COLUMN関数の数式

COLUMN(カラム)関数の数式は下記のようになります。

=COLUMN()

例えばA2セルに=COLUMN()と入力すれば「1」と表示されます。これが引数なしの挙動です。

一方、かっこの中にセルを指定すると、指定したセルの列数が表示されます。では、下記のような数式を入力すると、どのように表示されるでしょうか?

=COLUMN(E4)

答えは「5」です。COLUMN関数で引数を指定すると、どのセルに数式を入力しても引数で指定したセル番地の列数が表示されます。ROW関数と同じく、引数ありでも引数なしでも正しい挙動をします。

COLUMN関数の使い方・使用例

COLUMN関数はROW関数と同じで、リストに番号を付与するときに便利な関数です。ROW関数が使えれば、感覚的にわかりやすいです。

ROW関数・COLUMN関数が上手くいかない時の対処法

ここでは、ROW関数・COLUMN関数が上手くいかない時の対処法を解説します。エラー表示が直らない場合は、ぜひ参考にしてください。

#VALUE!

関数や数式が間違っている時に、表示されるエラーです。セル番地が正しく入力されてないとこのエラーが出ます。

#N/A

数式で示したセルの内容を参照できない時に出るエラーです。かっこ内のセルにマイナス等の文字列が含まれてしまうと、ただしく表示できなくなります。

#ERROR!

=ROWK()といったように、関数の書き方を間違えてしまうと出るエラーです。ただ、基本はイコールから始めて予測でROW関数は出てくるので、どこかから誤った数式をコピーしてこない限りは、このエラーが出ることはないでしょう。

まとめ

ExcelのROW関数は、指定された行数を表示する関数です。引数ありでもなしでも正しい挙動をします。主に、リストの番号を振る際に使われる関数で、数字を手打ちするよりもメンテナンス性が高く、効率がいい点がメリットです。

ROW関数は行数を表示する関数ですが、COLUMN関数は列数を表示する関数です。ROW関数の使い方を知っていれば、COLUMN関数も使えるので、どちらか一方の使い方をマスターしておきましょう。

キャリチェンでは、専門のキャリアコンサルタントが女性のキャリアアップやキャリアチェンジをご支援いたします。
転職にまつわるささいなご相談から、自己分析などキャリアプランの作成、面接練習などの具体的な選考対策まで幅広くサポートいたします。
土日休みで残業もほとんどないお仕事も多数ございますので、「定時で上がってアフターファイブを楽しみたい!」など
プライベートとの両立を叶えたいという方は是非お問い合わせください。
今なら、LINEから3分ほどで簡単にお申し込みいただけます。

是非お気軽にご相談ください。