すべての複製ウィンドウを閉じる
このブックの複製ウィンドウを閉じ、1つだけ残します。
実行前に確認
- 最後の1つは閉じません。同じブックのデータは保持されますが、各ウィンドウの独立した表示状態は失われます。
1サンプルコード
Sub Sample3116()
If MsgBox("このブックの追加ウィンドウを閉じ、1つだけ残しますか?", vbYesNo + vbQuestion) <> vbYes Then Exit Sub
Dim i As Long
For i = ThisWorkbook.Windows.Count To 2 Step -1
ThisWorkbook.Windows(i).Close
Next
End Sub図で見る操作の流れ
イメージ図コードに沿った概念図です。実際の画面や実行結果ではありません。
変更前
同じブックを複数ウィンドウで表示中
手動:確認
追加ウィンドウを閉じる確認で「はい」
マクロ:整理後
末尾のウィンドウから順に閉じ、1つだけ残す
「いいえ」で終了。データは保持されますが、閉じたウィンドウ固有の表示状態は失われます。1つしかなければ何も閉じません。
コードの処理を説明する模式図です。実際の画面や実行結果を撮影したものではありません。
使い方・実行手順を確認する3つの手順で、コードの使い方を確認できます
- 1
練習用のブックをExcelマクロ有効ブック(.xlsm)で保存します。練習用ブックの[表示]→[新しいウィンドウを開く]で複製ウィンドウを作っておきます。
- 2
Alt+F11でVBEを開き、[挿入]→[標準モジュール]にコードを貼り付けます。
- 3
Sample3116内にカーソルを置いてF5で実行します。このブックの複製ウィンドウを閉じ、1つだけ残します。