エクセルで1行おき・n行おきにデータを取り出す方法|INDEXとROW・CHOOSEROWS・3行ごと【実機で解説】

エクセルで1行おき・n行おきにデータを取り出す方法|INDEXとROW・CHOOSEROWS・3行ごと【実機で解説】

エクセルで1行おきにデータを取り出すには、=INDEX($B$3:$B$12,(ROW()-2)*2-1) のように INDEX関数で「1・3・5…番目」を指定して、下へコピーします。Microsoft 365 なら =CHOOSEROWS(B3:B12,SEQUENCE(5,1,1,2)) のように1つの式で取り出すこともできます。

「氏名・電話・氏名・電話…」のように交互に入ったデータを、氏名だけの一覧にするときに便利です。この記事では、1行おき・n行おきに取り出す方法を、実際の Excel の画面で説明します。

練習用Excelファイル(無料ダウンロード)
この記事と同じ、氏名と電話が交互に入ったデータです。
Excelファイル(.xlsx)/登録不要/数式・練習データ入り
目次

1行おき・n行おきに取り出す式の一覧

方法式取り出せる行(実機)
INDEX(コピーして使う)=INDEX($B$3:$B$12,(ROW()-2)*2-1)1・3・5・7・9番目
CHOOSEROWS(365)=CHOOSEROWS(B3:B12,SEQUENCE(5,1,1,2))1・3・5・7・9番目(1つの式)
FILTER(365)=FILTER(B3:B12,MOD(ROW(B3:B12)-ROW(B3),2)=0)1・3・5…番目
n行おき(3行ごと)=INDEX($B$3:$B$12,(ROW()-2)*3-2)1・4・7・10番目

INDEX関数で1行おきに取り出す

氏名だけを出したいセル(D3)をダブルクリックし、=INDEX($B$3:$B$12,(ROW()-2)*2-1) と入れます❶。D3 は3行目なので ROW()-2 は 1、×2-1 で 1番目になります。D4 では 3番目、D5 では 5番目…と、2つずつ進みます。

エクセルでセルD3にINDEXとROWで1行おきに取り出す式を入力している画面
エクセルでセルD3にINDEXとROWで1行おきに取り出す式を入力している画面

Enter を押して D7 までコピーすると、氏名だけが取り出せました❷。電話番号を取り出したいときは、(ROW()-2)*2(2・4・6…番目)にします。

エクセルで1行おきに氏名だけが取り出せた画面
エクセルで1行おきに氏名だけが取り出せた画面

n行おきにするときの考え方

「何番目を取り出すか」を (ROW()-最初の行の1つ上)×n−(n−1) で作ります。3行ごとなら ×3−2 で 1・4・7…番目です。実機で OFFSET を使った =OFFSET($AA$1,(ROW()-1)*3,0) でも、項目1・4・7・10 と3行おきに取り出せました。

うまくいかないときの確認表

症状原因対処
1行ずれるROW() から引く数が合っていない式を入れた行の番号に合わせて、最初が 1 になるように引く
#REF! になる取り出す番号が範囲の外になったコピーする行数を減らす・範囲を広げる
コピーすると範囲がずれる$ が無い$B$3:$B$12 のように $ を付ける
#NAME?(CHOOSEROWS)Microsoft 365 以外の版INDEX の方法を使う

よくある質問

1行おきに空白の行を入れたいです。

並べ替えを使う方法があります。となりの列に 1・2・3… と 1.5・2.5… を入れて並べ替えると、1行おきに空白が入ります。

1行おきに色を付けたいです。

1行おきに色を付ける方法を参照してください。

練習用Excelファイル(無料ダウンロード)
氏名と電話が交互に入ったデータです。
Excelファイル(.xlsx)/登録不要/数式・練習データ入り

あわせて読みたい:行の取り出しの関連記事

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

コメント

コメントする

目次