Excel VBA: 別のワークブックにセルの値をコピーする方法
Excel VBA を使用して、別のワークブックにあるセルの値をコピーする方法を学びましょう。具体的には、ワークブック1のA1の値をワークブック2のA2にコピーするプロシージャを作成します。
コード
Sub 違うワークブックにコピー() Dim wb1 As Workbook Dim wb2 As Workbook Dim ws1 As Worksheet Dim ws2 As Worksheet ' ワークブックを指定 Set wb1 = Workbooks("ワークブック1.xlsx") Set wb2 = Workbooks("ワークブック2.xlsx") ' シートを指定 Set ws1 = wb1.Sheets("Sheet1") Set ws2 = wb2.Sheets("Sheet1") ' ワークブック1のA1の値をワークブック2のA2にコピー ws2.Range("A1").Value = ws1.Range("A1").Value End Sub
コードの解説
ワークブックを指定する:
Workbooksオブジェクトを使用して、特定のワークブックを開きます。ここでは、ワークブック1とワークブック2を指定しています。
シートを指定する:
Sheetsオブジェクトを使用して、特定のシートを選択します。ここでは、両方のワークブックの “Sheet1” を選択しています。
セルの値をコピーする:
Rangeオブジェクトを使用して、セルの範囲を指定します。ws1.Range("A1").Valueはワークブック1のA1の値を表し、ws2.Range("A1").Valueはワークブック2のA2の値を表します。
値をコピー:
ws2.Range("A2").Valueにws1.Range("A1").Valueの値を代入することで、ワークブック1のA1の値がワークブック2のA1にコピーされます。
使用例
- このコードを新しいモジュールに貼り付けます。
- ワークブック1とワークブック2を作成または開きます。
- マクロを実行すると、ワークブック1のA1の値がワークブック2のA1にコピーされます。
これで、Excel VBA を使用して別のワークブックにセルの値をコピーする方法がわかりました。ぜひ試してみてください! 😊
