VBAのCVar
関数は、指定した値を Variant型(汎用型) に変換する関数です。
Variant型は 数値・文字列・日付・オブジェクトなど、あらゆるデータ型を格納できる 柔軟な型です。
目次
1. CVarの基本構文
Dim varValue As Variant
varValue = CVar(値)
「値」 に指定したデータを Variant型 に変換します。
2. CVarの特徴
- あらゆるデータ型をVariant型に変換できる
- もともとVariant型のデータはそのまま保持される
- データの型が固定されず、必要に応じて自動変換される
- 特定のデータ型に制限されず、柔軟な処理が可能になる
3. CVarの使用例
① 数値をVariant型に変換
Dim varValue As Variant
varValue = CVar(123)
MsgBox TypeName(varValue) ' "Integer" と表示
数値をVariant型に格納すると、内部的には元の型(Integer)を維持
② 文字列をVariant型に変換
varValue = CVar("Hello")
MsgBox TypeName(varValue) ' "String" と表示
文字列もVariant型に格納されるが、内部ではString型として扱われる
③ 日付をVariant型に変換
varValue = CVar(#2025/02/25#)
MsgBox TypeName(varValue) ' "Date" と表示
👉 日付データもVariant型に格納されるが、内部ではDate型として動作する
④ Variant型は型を自動で切り替える
varValue = CVar(100) ' 数値を代入
MsgBox TypeName(varValue) ' "Integer"
varValue = "ABC" ' 文字列を代入
MsgBox TypeName(varValue) ' "String"
Variant型は代入されたデータによって型が変わる!
4. CVarを使う場面
- 変数の型を固定せずに、汎用的に使いたいとき
- 関数の戻り値として、複数の型を扱いたいとき
- 異なる型のデータをまとめて処理したいとき
5. まとめ
CVar
は 数値・文字列・日付などをVariant型に変換する関数- Variant型はどんなデータ型も格納できるが、内部では元の型を保持する
- 代入する値によって型が変わるため、柔軟な処理が可能
- 特定の型に固定しない場合に便利だが、処理速度やメモリ使用量に注意
データ型を柔軟に扱いたいときは、CVar
を活用しましょう!
コメント