アクティブセルにデータを入力するには、ActiveCellプロパティを使います。
ActiveCellプロパティの対象オブジェクトは、Windowオブジェクトであり、Worksheetオブジェクトではありません。
ActiveCellプロパティのオブジェクトを省略した場合は、アクティブウィンドウのアクティブシートのアクティブセルを取得することができます。
Windowオブジェクトを使うと、各ウィンドウのアクティブセルが返されることになります。
アクティブセルの操作
Book1とBook2のWindowが開いています。
Book1のアクティブセルは「B2」、Book2のアクティブセルは「B4」です。
サンプルコード
コード内、Wクリックでコピーできます。
Sub サンプル2560() Windows("Book1").ActiveCell.Value = 1000 Windows("Book2").ActiveCell.Value = 2000 End Sub
Windows("Book1").ActiveCell.Value = 1000
Book1のアクティブセルB2へ1000を代入します。
Windows("Book2").ActiveCell.Value = 1000
Book2のアクティブセルB4へ2000を代入します。
●マクロの実行結果
アクティブセルの指定
アクティブセルを指定するには、Activateメソッドを使います。
いくつかのBookが開いているときは、Bookから指定します。
サンプルコード
コード内、Wクリックでコピーできます。
Sub サンプル2565() Windows("Book1").Activate Worksheets("Sheet3").Activate Range("B5").Activate ActiveCell.Font.Bold = True ActiveCell.Value = "サンプル" End Sub
Windows("Book1").Activate
Book1をアクティブにします。
Worksheets("Sheet3").Activate
Worksheet3をアクティブにします。
Range("B5").Activate
セルB5をアクティブセルにします。
ActiveCell.Font.Bold = True
アクティブセルのフォントを「太字」にします。
ActiveCell.Value = "サンプル"
アクティブセルに「サンプル」を代入します。
●マクロの実行結果
開いているウィンドウのアクティブセルにデータを入れる
現在開いているウィンドウのアクティブセルにデータを入れるマクロの例
サンプルコード
コード内、Wクリックでコピーできます。
Sub サンプル2570() Dim i As Integer For i = 1 To Windows.Count Windows(i).ActiveCell.Value = 3000 Next i End Sub
●マクロの実行結果
以上で「アクティブセルにデータを入力するマクロ」の説明を終わります。