はじめに
ある日、仕事で vba をつかった Excel マクロの開発を行っている際に、「vba の編集画面のシートの順番を並び替えてくれへん?」と上司に頼まれました。
具体的には下記画面の赤枠のシートの順番を並び替えてほしいということです。
このシートが表示されているエクスプローラー画面のことを「プロジェクトエクスプローラー」といいますが、
Excel vba 開発ではシートを追加して機能を足したり削除したりと、シートの数を変更していくと Excel vba 上の表示画面でのシートの並びがバラバラになってしまうことがよくあります。
しかもこのシートの並びを画面から入れ替えたところで順番は変わりません。
この並びがバラバラだからといってvbaの機能には何ら影響しませんが、どうしても見栄えが悪くなってしまうものです。
この記事では、このシートの順番を簡単に並び替える方法についてご紹介します。
シート名を並び替える方法
① メニューの「表示」→ 「プログラム ウィンドウ(W)」を選択します。
②「プロパティウィンドウ」画面が表示されますので、「プロジェクトウィンドウ」に表示されるシート名を適当にどれか選択します。
そうすると、「プロパティウィンドウ」画面に選択したシート名のいろいろな情報が表示されます。
③「プロパティウィンドウ」画面に表示されている中の「(オブジェクト名)」の名前を変更します。
※(オブジェクト名)の右横の入力欄(下記画面では「Sheet1」)をクリックして名前を変更できます。
この時、シート名の順番に並び替えるような値に変更します。
例えば、1番目に表示したいシートの「(オブジェクト名)」を「Sheet1」、2番目に表示したいシートを「Sheet2」、3番目に表示したいシートを「Sheet3」... と変更します。
すべてのシートの「(オブジェクト名)」を変更して「プロジェクトウィンドウ」画面を確認して並び替えできていればOKです!
シート数が多いと大変かもしれませんが、その辺は気合で頑張ってください。
ただし、「(オブジェクト名)」が同じ名前の場合はエラー画面が表示されますので、「(オブジェクト名)」はかぶらないようにご注意ください。
また「(オブジェクト名)」に記号「.(カンマ)」や「-(ハイフン)」のような記号が含まれる場合もエラー画面が表示され登録できないのでご注意ください。
まとめ
いかがでしょうか?
見栄えだけの問題で特に気にならない人には不要な処理ではありますが、もしシートの順番が気になって仕方がない方はぜひお試しください!