Excel VBAを使って、データを異なるシートから現在作業中のシートに転記するプロセスは、業務プロセスで役立ちます。以下のステップとスクリプトは、このタスクを効率的に実行する方法を説明します。
Excel VBAで別シートの値をシートにコピー&ペーストする方法
1: ワークシートの準備
ソースシートとターゲットシート(この場合は現在のシート)を定義します。
Sub CopyValuesToCurrentSheet()
Dim sourceWs As Worksheet
Set sourceWs = ThisWorkbook.Sheets("SourceSheet")
Dim targetWs As Worksheet
Set targetWs = ThisWorkbook.ActiveSheet ' 現在アクティブなシートをターゲットとする
2: データのコピーと貼り付け
ソースシートから必要な範囲を選択し、アクティブシートに値を貼り付けます。
' 例としてソースシートのA1:C10からデータをコピーして、ターゲットシートのA1に貼り付ける
Dim copyRange As Range
Set copyRange = sourceWs.Range("A1:C10")
Dim targetRange As Range
Set targetRange = targetWs.Range("A1")
' 値のみを貼り付ける
targetRange.Resize(copyRange.Rows.Count, copyRange.Columns.Count).Value = copyRange.Value
【VBA】貼り付け操作【値・数式・書式・行列の転置・加算貼り付けなど】
3: クリップボードをクリア
コピー&ペースト操作後にクリップボードをクリアすることは、不要なメモリ使用を避けるために重要です。
Application.CutCopyMode = False
End Sub
■特徴と利点
- 効率性
直接.Valueプロパティを使用して値を転記することで、処理の速度と効率が向上します。 - 精度
データの精度を維持しながら、必要な情報のみを迅速に現在のシートに転記します。 - 簡潔さ
コードがシンプルで、読みやすく、保守が容易です。
まとめ
Excel VBAを使用して別シートから現在のシートへデータを転記する方法は、特にデータ集約作業や自動化スクリプトの実装において非常に有用です。上記の方法を活用することで、複雑なデータ操作をシンプルかつ効率的に行うことが可能です。