いまさら? MsgBox関数の型(Excel VBA)

普段使うMsgBoxに配置するボタンはOKだけだったりするので、あまり戻り値を気にすることはなかった。 今回は、OKとCancelを配置して、ボタン(戻り値)によって処理を振り分ける必要があり、ちょっとググってみた。 見つかったページを見ると、サンプルによって、Integer型だったりLong型だったりしている。 実際の値を見るとInteger型で十分足りそうではある。 なのに、なんでLong型で切ってるんだろう? と釈然としないまま、さらにググっててみると、こんなページを見つけた。 結局Long型が正しいみたいだけど、VbMsgBoxResult型が正解みたい。 これからは、VbMsgBoxResult型を使うことにする。 以下、引用。

※MsgBoxの戻り値は「VbMsgBoxResult」で内部処理形式がLong型。 戻り値はLong型でも可能だがvbMsgBoxResult型を使用することでインテリセンスが利用可能となるメリットがある。


--
くもり いちじ あめ のち はれ

No comments: