あるワークシートの 1 つのセルの値を、下にドラッグして別のワークシートの連続する行の 2 つのセルにコピーするにはどうすればよいでしょうか。

あるワークシートの 1 つのセルの値を、下にドラッグして別のワークシートの連続する行の 2 つのセルにコピーするにはどうすればよいでしょうか。

あるワークシートの 1 つのセルの値を、下にドラッグして別のワークシートの連続する行の 2 つのセルにコピーするにはどうすればよいでしょうか。

例:

ワークシート 1:

1
2
3

ワークシート 2:

1
1
2
2
3
3

答え1

他にも方法はあると思いますが、ここでは数式を使用する方法をいくつか紹介します。


方法 1 - コピー + ヘルパー列

1 - ワークシート 1 の列をワークシート 2 にコピーします。
2 - この数式をワークシート 2 の隣接する列の最初のセルに入力します (データが A1 から始まると仮定すると、これは B1 に入力されます)。

=INDIRECT(CONCATENATE("A",ROUNDUP(ROWS($B$1:B1)/2,0)))

注: データが異なる列にある場合は、それに応じて列参照を調整します。データが下位の行から始まる場合は、行参照を調整する必要があります。そして+x後に置くROUNDUP(ROWS($B$1:B1)/2,0)-x行 1 からのオフセットはどこになります。

データが C5 から始まり、「ヘルパー列」(数式が入る列) が D5 から始まる場合の例:

=INDIRECT(CONCATENATE("C",ROUNDUP(ROWS($D$5:D5)/2,0)+4))

3 - 元のデータ セットに入力されている行数の 2 倍の数式をコピーします。


方法 2 - 他のシートから参照する。

方法 1 と同じですが、最初の列のコピーはありません。以下の数式では、データが Sheet1 の A1 から始まり、Sheet2 の A1 からドロップすることを前提としています。位置のオフセットとシート名の違いに応じて調整してください。

=INDIRECT(CONCATENATE("'Sheet1'!A",ROUNDUP(ROWS($A$1:A1)/2,0)))

それを Sheet2 の A1 にドロップしてコピーします。

関連情報