N列おきに飛び飛びのセルを参照したい

公開日:  最終更新日:2021/09/19

計算式で、A1+C1、A1+E1、A1+G1、、、という様に隣の列ではなく、N列おきに飛び飛びのセルを参照したいことがあります。

例えば、セルA1からセルH1まで数字が入力されています。セルA3からのA列に1行目の値をセルC1から2列飛ばしに参照したい場合を考えます

セルA3に=C1 、セルA4に=E1 、セルA5に=G1 と入力をしても良いのですが、数が多くなると大変な作業になり、参照先のセルを間違うことだってあり得ます。セルのコピーをしても、=C2、=C3、、となり上手くいきません。

関数を使って、サッとセルのコピーでやる方法です。OFFSET関数と、ROW関数を使います。

=OFFSET(参照する最初のセルの絶対参照,0,(ROW()-参照する最初のセルの列番号)*差分,1,1)

をセルA3に入力します。

参照する最初のセル:セルC1から2つ飛ばしに列を参照したいので、C1になります。C1の絶対参照になります。

参照する最初のセルの列番号:これは、A列が1.、B列が2、C列が3、、、と数えた数字です。

差分:幾つずつ列を飛ばして参照したいか。今の場合は、C列、E列と2列ずつ飛ばしたいので2となります。

今の場合は、A3に

=OFFSET($C$1,0, (ROW()-3)*2,1,1)

という式を入力して、下のセルにコピーをすれば、C1、E1、G1と参照していくことができます。

 

ROW関数

書式:ROW(セル)

引数に指定したセルの行番号を返します。=ROW(C10)の時、10が返ってきます。

引数を省略するとROW 関数が入力されているセルの行番号を返します。例えば、A10に=ROW()と入力すれば、A10の行数、10が返ってきます。

 

OFFSET関数

書式 :OFFSET(基準,行数,列数,高さ,幅)

基準セルを指定した数(行数、列数)だけ移動したセル範囲を返します。実際に範囲を移動するのではなく、参照するだけです。

基準:基準にするセルのアドレスを指定します。

行数:基準セルを上下方向へ移動する数を指定します。下方向は、プラス。上方向は、マイナスで指定します。

列数:基準セルを左右方向へ移動する数を指定します。右方向は、プラス。左方向は、マイナスで指定します。

高さ:基準セルの行の大きさを指定します。正の数字を指定します。

幅:基準セルの列の大きさを指定します。正の数字を指定します。

セルA1:B6に数値が入力してあります。セルD8には、OFFSET関数を使ってセルB4を参照します。基準セルはセルA1とします。

セルB4は、セルA1からみて、3行下(プラス3)、1列右(プラス1)となります。基準セルの囲は、1行、1列となります。

なので、セルD8には、=OFFSET(A1,3,1,1,1) という式が入ります。

シェアありがとうございます

  • このエントリーをはてなブックマークに追加
  • Pocket

Your Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

PAGE TOP ↑