Tips-イミディエート・ウィンドウ編

意外と便利なイミディエートウィンドウの使い方を紹介しています。N88Basic の時代から Basic を使用している人には、結構、常識かもしれません。

電卓代わりに

1.まずは、イミディエートウィンドウを開いてください。そこで、以下のような文字列を入力してください。

? 16*256

2.最後に Enter を押すと計算結果が表示されます。

? 16*256
4096

このように、イミディエート・ウィンドウにコマンドを入力して Enter を押すと、その行のコマンドが実行され、電卓を起動しなくても、計算ができます。ちなみに、最初の "?" は Debug.Print と同じ意味です。

Point : 一旦 Enter を押した後でも、カーソルを入力した行に移動して、 Enter を押すと何度でも同じ行を実行することができます。

Visual Basic の関数を使用して

上記の方法で、Visual Basic の関数を使用して、色々なことができます。

● 文字のコードを知りたい。(16進で表示)

? Hex$(Asc("A"))
? Hex$(Asc("あ"))

● 文字コードから表示される文字を知りたい。

? Chr$(&H41)
? Chr$(&H82A0)

● 10進数から16進数

? Hex$(255)

● 16進数から10進数

? &H7F33

● 8進数から16進数

? Hex$(&O144)

デバッグ時に

デバッグ時には、変数の内容を見たり、加工するのに応用できます。

1. デバッグしたい行で、プログラムを中断させます。引き続き、次のようなコマンドを使用します。

● 変数の内容を表示する

? intTotal

● A$の3番目の文字列を知りたい

? Mid$(A$, 3, 1)

Point : このような場合、一旦 Enter を押した後でも、入力した数字を変更して、再度 Enter を押して違った結果を見ることができます。

2. 代入文なども実行できます。

● 変数の内容を変更する

intTotal = intTotal * 100

3. 命令を ”:” で区切って、複数の命令を書くこともできます。

● 文字列の内容を16進数でダンプする。

For i% = 1 To 16 : ? Hex$( Asc( Mid$(a$, i%, 1) ) ) : Next

Point : このような文字列をいちいち入力するのが面倒な人は、プログラムの中にコメントで入れておきましょう。

自作の関数のテスト

作成した関数を、テストするのにテスト用のプログラムを作ったりして、実際に実行する必要はありません。イミディエート・ウィンドウでテストしましょう!

まずは、次のような階乗計算をする関数があった場合、

Public Function Calc(i As Integer) As Integer
    If i = 1 Then
        Calc = 1
        Exit Function
    End If


    Calc = Calc(i - 1) * i
End Function

この関数を標準モジュールに入れて、
イミディエート・ウィンドウに、以下のような入力をします。

? Calc(3)

すると関数が実行されて、イミディエート・ウィンドウに結果が表示されます。

? Calc(3)
6

プログラム上にブレークポイントを設定することも、ステップ実行を行うこともできます。

Point : テストする関数は、標準モジュールに入れてください。

(注意)このページの内容は、Visual Basic5.0(SP3) を対象に記述されています。他のバージョンでは、対応できないこともあるので、ご注意願います。
(注意) ここでの情報については、あくまでも各自の責任にて、充分にテストを行ってご使用ください。内容に関する質問については、回答できる保証がありませんので、予めご了承願います。