VBEのウィンドウ配置が崩れた!そんな時の解決策
VBAの開発中、プロパティウィンドウやプロジェクトエクスプローラをドラッグして移動させているうちに、どこにドッキングすればいいか分からなくなり、画面が使いにくくなってしまった経験はありませんか?
VBE(Visual Basic Editor)は、一度設定したウィンドウ配置を記憶し、Excelを再起動してもその状態が維持されます。「元に戻す」ボタンのような機能がVBEには存在しないため、一度崩れると手動で微調整するしかなく、非常にストレスが溜まります。今回は、レジストリ操作によってVBEのウィンドウ配置を「工場出荷時」の状態へ一発でリセットする方法を解説します。
基礎知識:レジストリとは
レジストリとは、Windows OSやインストールされているアプリケーションの設定情報が保存されている巨大なデータベースです。VBEのウィンドウ位置やサイズといった「個人設定」も、このレジストリの特定のキーに記録されています。
今回操作するキーは「HKEY_CURRENT_USER\Software\Microsoft\VBA\7.0\Common」にある「Dock」という値です。この「Dock」値がVBEの起動時に読み込まれることで、前回のウィンドウ配置が再現されます。つまり、この値を一時的に無効化(または削除)すれば、VBEは設定ファイルがないと判断し、既定の配置で起動するという仕組みです。
実装手順:レジストリエディターによるリセット
レジストリを操作する際は、必ず以下の手順を厳守してください。誤った操作をすると他のアプリケーションの設定に影響を与える可能性があるため、慎重に行いましょう。
1. Excelを完全に終了する:Excelが開いていると、終了時に現在の設定が再びレジストリに書き込まれてしまうためです。
2. レジストリエディターを起動:キーボードの「Windows」キー +「R」を押し、「regedit」と入力してEnterキーを押します。
3. 対象のキーへ移動:以下のパスを上のアドレスバーに貼り付けるとスムーズです。
「HKEY_CURRENT_USER\Software\Microsoft\VBA\7.0\Common」
※Officeのバージョンによっては「7.0」の部分が「6.0」など異なる場合があります。
4. Dock値の名前を変更:右側の画面にある「Dock」という名前を右クリックし、「名前の変更」を選んで「Dock_Backup」などに変更します。
5. 確認:Excelを起動し、VBEを開いてください。ウィンドウが初期状態に戻っていれば成功です。
サンプルプログラム:安全にレジストリを削除する(VBA版)
手動操作が不安な方のために、VBAからレジストリの該当値を削除するコードを紹介します。
Sub ResetVBEWindowLayout()
‘ レジストリ操作用のオブジェクトを作成
Dim WshShell As Object
Set WshShell = CreateObject(“WScript.Shell”)
‘ VBEの設定が保存されているレジストリパス
‘ バージョンに合わせて 7.0 の部分を調整してください
Dim regPath As String
regPath = “HKEY_CURRENT_USER\Software\Microsoft\VBA\7.0\Common\Dock”
‘ エラーハンドリング(キーが存在しない場合に備える)
On Error Resume Next
‘ レジストリから Dock 値を削除
WshShell.RegDelete regPath
If Err.Number = 0 Then
MsgBox “VBEのウィンドウ設定をリセットしました。” & vbCrLf & _
“Excelを再起動すると既定の配置になります。”, vbInformation
Else
MsgBox “設定が見つからないか、アクセス権限がありません。” & vbCrLf & _
“手動でレジストリエディターを確認してください。”, vbExclamation
End If
On Error GoTo 0
Set WshShell = Nothing
End Sub
応用と注意点
・バージョンによる違い:Office 2007以前を使用している場合、レジストリパスが「VBA\6.0」となる場合があります。ご自身の環境に合わせてパスを微調整してください。
・バックアップの重要性:レジストリを削除する際は、今回紹介したように「削除」するのではなく「名前の変更」を行うと、いつでも元に戻せるため安全です。
・リスク管理:レジストリ操作はOSの挙動に直結します。自信がない場合は、必ず「名前の変更」によるバックアップを行ってから作業を進めてください。
このTipsを活用して、常にクリーンで快適な開発環境を保ちましょう。
