「vba ウォッチウィンドウ 変数以外」
という検索キーワードでのアクセスがありました。
VBE(Visual Basic Editor)のウォッチウィンドウで、変数ではないものを確認するにはどうすればいいのか、探していた方による検索です。
ウォッチ式には代入文の右辺に書かれる式を指定できる
結論からいえば、ウォッチウィンドウで変数以外を確認するには、代入文の右辺に書かれる式をウォッチ式として登録すればOKです。
単なるデータを返すプロパティをウォッチ式として登録
簡単な実例から確認しましょう。Dim sh1_name As String
sh1_name = Sheets(1).Name
End Sub
「vba ウォッチウィンドウ 変数以外」
と検索なさった方は、上記のようなプロシージャであれば、String型の変数sh1_nameをウォッチ式に登録して、ウォッチウィンドウで確認できることをご存知なはずです。
代入文の右辺に書かれる式をウォッチ式として登録できるのですから、上記のプロシージャであれば「Sheets(1).Name」という式を、下図のように指定できます。
なお、ウォッチ式に変数を登録した場合とは違って、代入文が実行されていない、ステップ実行に入った直後に、値を確認できていることにも注目しておきましょう。
オブジェクトを返すプロパティをウォッチ式として登録
2種類あるプロパティのうち、オブジェクトを返す式も登録できます。Dim sh1 As Worksheet
Set sh1 = Sheets(1)
End Sub
ウォッチ式には、普通の変数だけでなく、オブジェクト変数も指定できます。
上記のプロシージャであれば、Worksheet型のオブジェクト変数sh1をウォッチ式として登録して、下図のように確認できます。
で、代入文の右辺に書かれる式をウォッチ式として登録できるのですから、上記のプロシージャであれば「Sheets(1)」という式を指定できます。
ウォッチ式にはプロシージャに登場しない式も指定できる
ここまでは理解のために、プロシージャの中に登場する式を指定する例をご覧いただきましたが、ウォッチ式にはプロシージャに登場しない式も指定できます。
中身の存在しないプロシージャでも、上図のように確認できます。
「Sheets(1).Name」のように文字列を返す式だけでなく、「Sheets(1)」のようなオブジェクトを返す式も、もちろん指定できます。
- Newer:VBAで前月の1日を取得する
- Older:全Rectangleを選択する
Home » VBE(Visual Basic Editor) » ウォッチ式に変数でないものを