Excel VBA: 別のワークブックにセルの値をコピーする方法


 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

コードの解説

  1. ワークブックを指定する:

    • Workbooks オブジェクトを使用して、特定のワークブックを開きます。ここでは、ワークブック1とワークブック2を指定しています。
  2. シートを指定する:

    • Sheets オブジェクトを使用して、特定のシートを選択します。ここでは、両方のワークブックの “Sheet1” を選択しています。
  3. セルの値をコピーする:

    • Range オブジェクトを使用して、セルの範囲を指定します。ws1.Range("A1").Value はワークブック1のA1の値を表し、ws2.Range("A1").Value はワークブック2のA2の値を表します。
  4. 値をコピー:

    • ws2.Range("A2").Valuews1.Range("A1").Value の値を代入することで、ワークブック1のA1の値がワークブック2のA1にコピーされます。

使用例

  1. このコードを新しいモジュールに貼り付けます。
  2. ワークブック1とワークブック2を作成または開きます。
  3. マクロを実行すると、ワークブック1のA1の値がワークブック2のA1にコピーされます。

これで、Excel VBA を使用して別のワークブックにセルの値をコピーする方法がわかりました。ぜひ試してみてください! 😊