「excel vba アクティブブック 切り替え」
といった検索でアクセスがありました。
Excel VBAでアクティブなブックを切り替える・変更するには、どのようなコードを書けばいいのかを調べていらしたのでしょう。
アクティブブックを切り替えるサンプルマクロ
以下のExcelマクロを作成してあるブックと、「マクロ無しのブック.xlsx」とが開かれている状態で、マクロを作成したあるブックがアクティブな状態で「アクティブブックを切り替える」マクロを実行してください。
MsgBox ActiveWorkbook.Name
Workbooks("マクロ無しのブック.xlsx").Activate
MsgBox ActiveWorkbook.Name
End Sub
最初にマクロを作成してあるブックの名前がメッセージボックスに表示され、その後アクティブなブックの切り替え・変更が行われて「マクロ無しのブック.xlsx」とメッセージボックスに表示されます。
アクティブブックを切り替えているのは、
Workbooks("マクロ無しのブック.xlsx").Activate
の行です。
Workbookオブジェクトに用意されているActivateメソッドを呼び出すことで、
アクティブなブックが切り替わります。
ブックを開けばアクティブブックは切り替わる
「マクロ無しのブック.xlsx」が開かれていない状態も見ておきましょう。
Cドライブのtempフォルダーに「マクロ無しのブック.xlsx」がある状態で、以下のExcelマクロを実行してください。
MsgBox ActiveWorkbook.Name
Workbooks.Open "C:\temp\マクロ無しのブック.xlsx"
MsgBox ActiveWorkbook.Name
End Sub
最初にマクロを作成したブックの名前がメッセージボックスに表示され、その後「マクロ無しのブック.xlsx」とメッセージボックスに表示されます。
Excelでブックを開く操作を行うと、最後に開いたブックがアクティブになります。
VBAの場合も同じです。
ブックを開いた直後ならば、開いたばかりのブックがアクティブになっています。
最終更新日時:2023-10-28 16:19
- Newer:Excel VBAでWordを開きアクティブにする
- Older:VBAでシートがアクティブかを判定するには
Home » エクセルマクロ・Excel VBAの使い方 » Workbooks・Workbook » VBAでアクティブブックを切り替えるには