VBAを使ってExcelのシート間でデータを転記する方法について解説します。例えば、シート1のA列に入力されているデータを、指定の範囲ごとにシート2、シート3に転記したい場合、VBAを利用することで自動化することができます。
1. 問題の背景
質問者が求めているのは、シート1のA列に入力されたデータを10行ずつシート2、シート3に転記する方法です。VBAを使えば、この作業を繰り返し簡単に行うことができます。
2. VBAコードの概要
VBAを使ってシート1からシート2、シート3にデータを転記する基本的なコードを紹介します。このコードは、A列のデータを10行ずつ区切り、それぞれシート2、シート3に転記します。
Sub CopyDataToMultipleSheets()
Dim i As Integer
Dim lastRow As Long
lastRow = Sheets("Sheet1").Cells(Rows.Count, 1).End(xlUp).Row
For i = 1 To lastRow Step 10
Sheets("Sheet1").Range("A" & i & ":A" & i + 9).Copy
If i <= 10 Then
Sheets("Sheet2").Range("A1").PasteSpecial Paste:=xlPasteValues
ElseIf i > 10 And i <= 20 Then
Sheets("Sheet3").Range("A1").PasteSpecial Paste:=xlPasteValues
End If
Next i
End Sub
このコードでは、シート1のA列を10行ごとにシート2とシート3に転記する処理を実行します。
3. コードの詳細説明
このVBAコードは以下のステップで動作します。
- 最初にシート1のA列の最終行を取得します。
- 次に、A列を10行ごとに区切ってコピーします。
- 10行ごとに、シート2またはシート3にデータを転記します。
この方法を使用することで、手動での転記作業を省力化し、効率的にデータを管理できます。
4. コードを実行する方法
VBAコードを実行する方法は次の通りです。
- Excelを開き、「Alt + F11」でVBAエディターを開きます。
- 「挿入」>「モジュール」を選択し、コードを貼り付けます。
- コードを貼り付けた後、「F5」キーを押して実行します。
これで、シート1のデータがシート2とシート3に自動的に転記されます。
5. まとめ
VBAを使うことで、Excelのシート間でデータを効率的に転記することができます。上記のコードを参考にして、自分の作業に合わせてカスタマイズしてみてください。VBAはExcelでの作業を自動化し、時間を大幅に短縮できる強力なツールです。


コメント