EnjomonWeb

Excel VBAの画像
2024/04/23

Excel VBA ブックを開いた時のウィンドウサイズを指定する方法 | workbook_open

仕事でVBAを使うことがあり、やりたいことはネットで調べていますが、VBA初心者の私が分かりづらかったものを、初心者でも分かるように説明したいと思います。

効率的なコードが書けていない可能性もありますので、予めご了承ください。

今回はworkbook_openを使用し、ブックを開いた時の大きさを指定する方法を紹介します。

使用ケース

例として、以下のような品番をキーとして他の情報を検索する、ちょっとした表があるとします。

かなり極端な表例ですが、これだけの表なのに、こんなに大きなサイズで開かれてもちょっと無駄ですよね。

確かエクセルは特に設定がない限り、1つ前に開いたエクセルと同じサイズで開くはずです(違ったらすいません!)。

これぐらいの表なら、これぐらいのサイズで十分ですよね?

かといって、開くたびにサイズを調節するのも面倒・・・。

ということで、マクロを使って、このファイルを開くときは常にこのサイズで開くようにしたいと思います。

コードを書く場所

マクロといえば標準モジュールに書くことが多いですが、今回はThisWorkbookにコードを書いていきます。

ThisWorkbookをダブルクリックでコードを書いていきます。

サンプルコード


Private Sub workbook_open()

Application.WindowState = xlNormal
Application.Width = 500
Application.Height = 400

End Sub

コード解説

プロシージャー

Private Sub workbook_open()

ブックを開いた時にマクロを自動実行させるには、workbook_openを使用します。

workbook_openは、ブックを開いたときに起動させるイベントプロシージャーです。

今回はウィンドウサイズで試していますが、他にも色々使えそうですね。

ブックを通常サイズで開く

Application.WindowState = xlNormal

WindowStateは表示状態を指定するプロパティです。

WindowStateプロパティ

Application.WindowState = (xlNormal, xlMaximized, xlMinimized)

一度標準サイズとする理由としては、既に別のブックを最大化で開いている場合、エラーとなることを回避するために記述します。

サイズ指定

Application.Width = 500
Application.Height = 400

横幅をWidth、高さをHeightで指定します。

ちなみに単位はポイントとなります。

以上、ブックを開いた時のウィンドウサイズを指定する方法でした。

内容は薄めでしたが、使い方次第で色々応用ができるような気がするので、参考にしてもらえればと思います。

Excel VBAの画像

ブックを開いた時のウィンドウサイズを指定する方法 | workbook_open

Excel VBAの画像

新規ブックを作成しマクロが登録されたボタンを設置する方法 | OnAction

Excel VBAの画像

複数のワークシートをまとめて表示・非表示にする方法 | Visible Not.Visible

Excel VBAの画像

セル位置が変わっても特定の範囲を選択する方法 | Find&Address

Excel VBAの画像

電話番号からハイフンを削除し0から表示させる方法 | Evaluate&Replace

Excel VBAの画像

ダイアログボックスからファイルを選択して開く | GetOpenFilename

About

EnjomonWebは、「えんじょもん」である元転勤族の管理人が石川県金沢市から発信する、WEB制作情報をメインとした情報発信サイトです。

コーディング習得過程で検索してもすぐに解決しなかったことや、初心者には分かりづらい内容を分かりやすく説明することができるサイトを目指しています。

※「えんじょもん」とは金沢弁で「遠方の人、県外出身の人」という意味の方言。