COLUMN関数を使用します
ROW関数は、引数にセル番地を指定するとその行番号が結果として得られます。たとえばROW(A5)とすれば、結果は「5」となります。COLUMN関数は、引数にセル番地を指定するとその列番号が結果として得られます。列番号は、A列を「1」として、B、C・・と順に「2」、「3」・・と約束されています。
たとえば、COLUMN(A5)とすれば、結果は「1」、COLUMN(C5)とすれば、結果は「3」となります。
ROW関数もCOLUMN関数も、引数を省略するとその関数が入力されているセル自身の行番号、列番号が結果になります。これだけだと、「だから何?」「それで?」「行番号とか列番号とかがわかったところで何がありがたいの?」となりそうですが、ROW関数を入力したセルを下方向へコピーすれば、結果は順に1ずつ増えます。同様に、COLUMN関数を入力したセルを右方向へコピーすれば、結果は順に1ずつ増えます。「1ずつ増える」という規則性があります。
そこで、規則性のある数値を作りたいときに、これらの関数を利用することを考えます。たとえば、VLOOKUP関数の3つ目の引数「列番号」。セルB2にVLOOKUP(検索値,参照範囲,2,FALSE)、セルC2にVLOOKUP(検索値,参照範囲,3,FALSE)、セルD2にVLOOKUP(検索値,参照範囲,4,FALSE)・・・・と入力したいとき、列番号にセルB2の列番号「2」のかわりにCOLUMN()と入力すれば、あとはそのままコピーするだけでよいです。
これらの関数のように、他の関数と組み合わせて使うことによって、その効果が発揮される関数があります。ついでながら、ROW、COLUMNともに、その関数が入力されているセル自身のセル番地を引数に指定して(省略するのと結果は同じ)、循環参照のエラーを起こさない面白い関数です。