やりたいこと
下記みたいなデータがあるとする
No | A列 | B列 |
---|---|---|
1 | 1 | 5 |
2 | 2 | 6 |
3 | 3 | 7 |
4 | 4 | 8 |
こうしたい
No | C列 |
---|---|
1 | 1 |
2 | 2 |
3 | 3 |
4 | 4 |
5 | 5 |
6 | 6 |
7 | 7 |
8 | 8 |
解決方法
下記をC列にペーストして下にスライド。
=IF(MOD(ROW(),2)=1,INDIRECT("A"&INT(ROW()/2)+1),INDIRECT("B"&(ROW()/2)))
解説
まず単純にIF分岐。MOD(ROW(),2)
が1だったらINDIRECT("A"&INT(ROW()/2)+1)
実行。
MOD
は剰余を求めます。ROW
は行番号を取得します。
上記を簡単に以下のように表にしてみると、奇数行は1,偶数行は0になります。
No | =ROW() | =MOD(ROW(),2) |
---|---|---|
1 | 1 | 1 |
2 | 2 | 0 |
3 | 3 | 1 |
4 | 4 | 0 |
で、次にINDIRECT
で指定しているセル名を求めている部分も表にすればわかりやすいです。
No | =ROW() | =MOD(ROW(),2) | IF条件YESの場合(INT(ROW()/2)+1) | IF条件NOの場合=(ROW()/2) |
---|---|---|---|---|
1 | 1 | 1 | 1 | 0 |
2 | 2 | 0 | 2 | 1 |
3 | 3 | 1 | 2 | 1 |
4 | 4 | 0 | 3 | 2 |
5 | 5 | 1 | 3 | 2 |
6 | 6 | 0 | 4 | 3 |
上記により、奇数行の場合はA1
セルを参照、偶数行の場合はB1
セルを参照、A2
、B2
を参照するとなるわけですね。。
(赤文字部分をINDIRECT
で参照している)