「vba xldown 型」
という検索で、このサイト『インストラクターのネタ帳』へアクセスがありました。
拙著『いちばんやさしいExcel VBAの教本』でもご紹介している「Range("A1").End(xlDown)」といったコードで使われる、
XlDirection列挙に定義されている定数xlDownについて調べていた方による検索です。
具体的に何を調べていたのか、さまざまな可能性の考えられるキーワードですが、VBAではない他の言語でプログラミング経験のある方が、Excel VBAの定数xlDownのデータ型を調べていたように、私には感じられます。
定数xlDownのデータ型はVBAのLong
結論からお伝えすると、Excel VBAの定数xlDownのデータ型は、VBAのLongです。
VBAのLongは4バイト
ちなみに、他言語の経験がある方の場合、Longという名前から8バイトの
-9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807
と考えてしまうことが少なくないと思いますが、VBAのLongは違います。
VBAのLongは、多くの他言語のint・integer的な型と同じ4バイトの
-2,147,483,648 〜 2,147,483,647
です。
VBAは、後方互換性を気にせざるを得ないMicrosoftが、1990年代に作った言語ですから、こんな部分でdisらないであげてください。
TypeName関数でxlDownのデータ型を調べる
ショートカットキー[Ctrl]+[G]などで表示できるイミディエイトウィンドウで、VBAのTypeName関数を使って、xlDownのデータ型を確認してみてください。
イミディエイトウィンドウで、
? typename(xldown)
を実行すれば、下図のようにLongであることを確認できます。
ローカルウィンドウでxlDownのデータ型を調べる
xlDownのデータ型を調べるだけなら、上記のイミディエイトウィンドウを使った操作が簡単ですけれど、拙著のLesson 30「変数に代入されたデータを確認しましょう」以降で多用しているローカルウィンドウを使った方法も、試してみることをおすすめします。Dim var As Variant
var = xlDown
End Sub
メニュー[表示]-[ローカルウィンドウ]からローカルウィンドウを表示して、上記のSubプロシージャをショートカットキー[F8]でステップ実行してください。
ステップ実行を進めて、Variantで宣言した変数varにxlDownが代入されると、
上図のようにLongであることを[型]欄で確認できます。
最終更新日時:2019-10-18 14:17
- Newer:xlwtで入力済セルに書き込みをするには
- Older:〇以上はそのまま〇未満は〇を表示-IF関数・MAX関数
Home » Excel VBA Rangeオブジェクト » Endプロパティ » xlDownのデータ型はVBAのLong