データを別シートにFor~Next文を使用して転記する方法について説明します。
例題
転記前状態(Sheet1のA2セル~A6セルに登録されているデータ)を、転記後状態(Sheet2のC2セル~C6セルに転記)にするプログラミング方法です。
[転記前]:
[転記後]:
プログラミング
プログラミングは以下の通りとなります。
[記述例]:
Sub サンプル()
Dim 行 As Double
For 行 = 2 To 6
Sheets("Sheet2").Range("C" & 行) = Sheets("Sheet1").Range("A" & 行)
Next
End Sub
最初に変数:行を指定します。
次にFor~Next文を使用して変数:行に2~6までの数値を順次セットしながらループさせます。
このループによりSheet1シートのA列2行目~6行目のデータをSheet2シートのC列2行目~6行目に転記する事になります。
転記の記述方法は、「=」(イコール)の右側に転記前のシート名及びセルを指定し、左側に転記先のシート名及びセルを指定します。
シート名の記述方法は、sheets("[シート名]")とし、セルの記述方法はRange("[セル]")となります。シート名とセルとの間は「.」(ピリオド)で繋げます。
ループ内の記述内容を説明すると、
---------------------------------
「最初に変数:行に2がセットされている場合、Sheet1シートのA2セルのデータをSheet2シートのC2セルに転記します。
---------------------------------
次に変数:行に3がセットされている場合、Sheet1シートのA3セルのデータをSheet2シートのC3セルに転記します。
---------------------------------
次に変数:行に4がセットされている場合、Sheet1シートのA4セルのデータをSheet2シートのC4セルに転記します。
---------------------------------
次に変数:行に5がセットされている場合、Sheet1シートのA5セルのデータをSheet2シートのC5セルに転記します。
---------------------------------
次に変数:行に6がセットされている場合、Sheet1シートのA6セルのデータをSheet2シートのC6セルに転記します。
---------------------------------
との意味になります。
ダンロード
上記で説明したファイルをダウンロードできます。ご自由にお使い下さい。