2019年3月25日ウィンドウActivateNext、ActivatePreviousメソッドExcelのウィンドウには開いた順番に1から始まるインデックス番号が付けられています。このときインデックス番号が1のウィンドウがアクティブウィンドウになります。ActivateNextメソッドとActivatePreviousメソッドを実行すると後述するルールに従ってウィンドウの並べ直しが行われます。それぞれのメソッド実行後は並べ直しが終わったあとの状態で表示されます。Windowオブジェクトを指定します。通常はActiveWindowプロパティかWindowsオブジェクトにインデックス番号を指定して設定します。並べ直しのルールActivateNextメソッドとActivePreviousメソッドの並べ替えは、先頭が最後に行って、最後が先頭に行って、というような単純なインデックス番号がくるくる回るようなルールになっていません。親オブジェクトで指定するウィンドウのインデックス番号に並べ替えは依存し、ActivateNextメソッドとActivePreviousメソッドでルールが異なります。以下の例はPersonal.xlsbを含めて8つのウィンドウがある場合に、Windowsオブジェクトの先頭、3番目、最後の8番目に対してActivateNextメソッドとActivatePreviousメソッドを実行した場合のインデックス番号の変化になります。ActivateNextメソッドの並べ直しルール親オブジェクトとして指定したウィンドウのインデックス番号が一番最後に移動します。Windowsオブジェクトのインデックス番号に1(先頭)を指定した場合Windowsオブジェクトのインデックス番号に3(途中)を指定した場合Windowsオブジェクトのインデックス番号に8(最後)を指定した場合ActivatePreviousメソッドの並べ直しルールインデックス番号が一番最後のウィンドウが先頭に移動し、親オブジェクトとして指定したウィンドウのインデックス番号が2番目に移動します。Windowsオブジェクトのインデックス番号に1(先頭)を指定した場合Windowsオブジェクトのインデックス番号に3(途中)を指定した場合Windowsオブジェクトのインデックス番号に8(最後)を指定した場合ActivateNextサンプルコードアクティブウィンドウに対してActivateNextメソッドを実行するコードです。実行するとアクティブウィンドウのインデックス番号が一番最後の移動します。SubActivatePreviousサンプルコードインデックス番号が2番目のウィンドウに対してActivatePreviousメソッドを実行するコードです。実行するとインデックス番号が一番最後のウィンドウが先頭に移動します。Excel作業をVBAで効率化シェアお問合わせTOPへ。