Editor)は、VBAで使われるコードエディタ、コンパイラ、デバッガ、その他の開発支援ツールが統合された開発環境です。ウィンドウの使い方について説明します。G初期設定では、コードウィンドウの下にドッキング表示されます。イミディエイトウィンドウの基本的な使い方ウィンドウ内での操作により、ウィンドウに変数の値を出力したり、ステートメントを実行したりできます。・VBA実行中は、実行中のプロシージャー内で実行される。Explicitがない)上で実行される。このように考えて以下を読むと理解しやすいと思います。実行中のプロシージャーから参照可能な変数については、?に続けて変数を書いてEnterすることで値を表示できます。数値の場合は先頭に符号が付きますので、正数の場合は半角スペースが先頭に付いて表示されます。配列全体を指定するとエラーとなります。配列の要素を指定すれば表示できます。既定のプロパティが無い場合や、戻り値がオブジェクトの場合はエラーとなります。Publicなモジュールレベル変数の値を表示VBA実行中ではない場合でも、Publicなモジュールレベル変数であれば表示できます。※Private変数は表示できません。プロシージャー「sample」を実行しておいて、その後に、?Pvarで値が表示されます。非実行中であっても、?オブジェクト.プロパティで表示できます。※戻り値が単一の値以外(配列やオブジェクト)はエラーになります。※戻り値のあるメソッドはプロパティ同様に扱えます。Ctrl+Spaceで入力候補が表示されます。VBA関数の結果を表示VBAの組み込み関数の結果を表示できます。作成したFunctionプロシードャーの戻り値を確認できます。ステートメントを実行VBA実行中に変数の値を変更?を書かずに、変数への代入式を書いてEnterすることで、変数の値を変更できます。iに3が入っているときに、i=1これでEnterして、再度iの値を表示しています。Publicなモジュールレベル変数の値を変更VBAのモジュールレベル変数は、VBAの実行が終了した後でも、その値を保持しています。Public変数については、VBA実行中ではない場合でも変更できます。※Private変数は扱えません。変更方法は、前記のVBA実行中に変数の値を変更と同じです。オブジェクトのプロパティの値を変更?を書かずに、プロパティへの代入式を書いてEnterすることで、プロパティの値を変更できます。A1セルに"test"が入っているときに、range("A1")="てすと"これでEnterして、再度A1セルの値を表示しています。Trueデバッグ中にVBAが途中終了した場合、Application.ScreenUpdatingがTrue状態に戻らない場合があり、クリックしても画面が変わらない等の症状になる場合があります。Trueを入れてEnterしてください。途中でVBAが終了してしまうと、そのままになってしまい、新たなイベントが発生しなくなります。Trueを入れてEnterしてください。プロシージャーを実行プロシージャーを直接起動できます。sampleと入力してEnterしています。実行できるプロシージャーは特に制限はありません、引数も指定できます。ウィンドウに出力できます。変数・定数・式は、単一の値である必要があります。配列やオブジェクトは出力できません。;(セミコロン)に続けて書かれた変数・定数・式の値は、改行されずに表示されます。,(カンマ)に続けて書かれた変数・定数・式の値は、一定も字数間隔をあけて表示されます。セミコロンやカンマは、イミディエイトウィンドウで?で表示する場合でも使えます。イミディエイトウィンドウをクリアするイミディエイトウィンドウの内容は後ろにどんどん追加されて行ってしまいます。(一定行数に達すると、古いものが消されます。)どこかの時点で全消去したい時は、ウィンドウ内の文字列を全選択(Ctrl+A等)して「Delete」してください。イミディエイトウィンドウの高度な使い方イミディエイトウィンドウでは前述のとおり任意のステートメントを実行できます。(Dim等、実行出来ないステートメントはあります)ただし、1行で確定(1行で処理が完結)していなければなりません。複数行をまとめて実行することはできません。If)は普通に書くことはできません。イミディエイトウィンドウで複数ステートメントを実行するには、:(コロン)で複数ステートメントを1行に書いて実行します。このような方法については、以下でいろいろなパターンが紹介されています。Explicitにかかわらず変数宣言の必要がありません。イミディエイトではいきなり変数を使う事が出来ます。その変数はイミディエイト内で値が保持されます。こんなことも可能です。(ちょっと現実離れしてはいますが)以上のように、ある程度はプロシージャーを書くのと同様の事が出来ます。タイピングが気にならなければ、このような使い方も可能だという紹介です。イミディエイトウィンドウに入力した内容は、エクセルを閉じると消えてしまいますので、1回その場だけの実行として素早く実行したい場合に限定されます。通常は、普通にプロシージャーを書いたほうが良いでしょう。イミディエイトウィンドウの最後にイミディエイトウィンドウは、VBAデバッグではなくてはならないものです。特段に難しい使い方を覚える必要はありませんが、最低限の使い方はしっかり覚えておきましょう。ローカルウィンドウ、ウォッチウィンドウと使い分けて、効率的よいデバッグをしてください。ウィンドウこのサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。掲載のVBAコードは動作を保証するものではなく、あくまでVBA学習のサンプルとして掲載しています。掲載のVBAコードは自己責任でご使用ください。万一データ破損等の損害が発生しても責任は負いません。ウィンドウこのサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。