1列(行)おきにデータを抽出したい場合に使える関数です。
1列ごとの場合
A4セルに以下の式を挿入し、右方向へオートフィルコピーです。
=INDIRECT(ADDRESS(ROW(A1),(COLUMN())*2-1,1))
・(COLUMN())*2-1 1列おきの列番号を計算してます。
・ROW(A1) 1行目を指定しています。
・ADDRESS 上記の指定によって「A1」「C1」「E1」を指定します。
・INDIRECT セルの内容を表示します。
参照先が別シートになっている場合は以下の式で応用できます。
=INDIRECT(ADDRESS(ROW(A1),(COLUMN())*2-1,1,,"sheet1"))
1行ごとの場合
=INDIRECT("A"&ROW(A1)*2-1)
関数の意味は列の場合と同じです。
「INDIRECT("A"」はA列を指定する意味です。
違う列だった場合はそこのアルファベットを入力すればOKです。
また参照先が違うシートだった場合は以下のようになります。
=INDIRECT("sheet2!A"&ROW(A1)*2-1)
【追記】
INDEX関数でも可能です。
指定した範囲から1行ごとに抽出できます。
=INDEX(Sheet2!$A$1:$A$1000,ROW(A1)*2-1,1)