EXCEL-VBAでアクティヴシートを制御する
以下は、アクティブシート上のセルを書き換えるタイミング(Worksheet_Change)で、
任意のシートにアクティブシートを切り替えて、そのシートでの処理を行い、
もとのシートをアクティブシートに戻します。
・サンプル
Private Sub Worksheet_Change(ByVal Target As Range) Dim Sheet_Work As Worksheet Dim Sheet_Save As Worksheet Set Sheet_Save = ActiveSheet Set Sheet_Work = Worksheets("Sheet2") Sheet_Work.Activate '任意シート(例ではSheet2)の任意の処理を記述する。 MsgBox "Sheet2" Sheet_Save.Activate Set Sheet_Work = Nothing Set Sheet_Save = Nothing End Sub
ちなみに、Worksheet_Changeイベントは、セルの値が変更された時に発生しますが、SelectionChangeイベントは選択範囲が変わった時に発生します。