Excel VBA VarType関数は変数のデータ型を調べるために使用します

 

Excel VBA VarType関数は、変数のデータ型を調べるために使用します。コードの中で変数がどのようなデータ型であるかを確認し、適切な処理を行うことができます。具体的な使い方や、注意点やサンプルコードを紹介します。

 

日常業務でExcelを多用し、手動作業を減らしたいと考えている方へ
本サイト参考:Excel VBAで自動化するコードのベースを習得したい方におすすめの記事

 

Excel VBA VarTypeを利用

以下のようなシーンで利用されます。

・データ型によって処理を変えたい

・複数の型を取りうる変数のデバッグ

・ユーザー入力や外部データの型を確認する

 

使い方

・宣言:VarType(variable)

・戻り値: 変数のデータ型を示す数値(定数)

 

ポイント

・VarType関数の戻り値は定数値であり、それぞれのデータ型に対応しています。例えば、vbStringは文字列を示す定数で値は 8 です。

・複数の定数値の組み合わせで返される場合があるため、戻り値の解釈に注意が必要です。

 

Excel VBA VarTypeのサンプルコード

基本的な文法やVBAの実践的な応用までを網羅的に学習できる方法は、ExcelVBAエキスパート資格の取得を目指すこと。学習を通して、より効率的に、着実に基礎を身につけることが可能です。資格取得すれば、スキルの証明にもなり、職場での評価アップにも繋がるため、勉強を進めるモチベーションにもなります。
本サイト参考:マクロ知識がないから「何から学べば良いのかわからない」という人におすすめの記事

基本的な使用例
Option Explicit

Sub VarTypeExample()
    Dim varData As Variant
    
    ' 数値を格納
    varData = 123
    MsgBox "データ型: " & VarType(varData)  ' 出力: 2 (整数型)
    
    ' 文字列を格納
    varData = "Hello, World!"
    MsgBox "データ型: " & VarType(varData)  ' 出力: 8 (文字列型)
    
    ' 日付を格納
    varData = Date
    MsgBox "データ型: " & VarType(varData)  ' 出力: 7 (日付型)
End Sub

 

ExcelVBAエキスパートベーシックは仕事の効率をあげる人の資格です。
本サイト参考:日常業務でExcelを多用し、手動作業を減らしたいと考えている方におすすめの記事

 

データ型によって処理を変える例

Option Explicit

Sub VarTypeConditionExample()
    Dim varData As Variant
    
    ' 変数に値を設定(ここでは例として文字列)
    varData = "Hello, World!"
    
    ' データ型によって処理を変える
    Select Case VarType(varData)
        Case vbInteger
            MsgBox "これは整数型です。"
        Case vbString
            MsgBox "これは文字列型です。"
        Case vbDate
            MsgBox "これは日付型です。"
        Case Else
            MsgBox "これは他の型です。"
    End Select
End Sub

 

解説

・VarType(varData)
varDataのデータ型を返します。戻り値は定数値です。

・Select Case VarType(varData)
VarType関数の戻り値に基づいて処理を分岐します。

・vbInteger, vbString, vbDate
これらはそれぞれのデータ型を示す定数です(vbIntegerは 2、vbStringは 8、vbDateは 7)

データ型定数の一覧

・vbEmpty (0): 空 (未初期化)
・vbNull (1): Null 値
・vbInteger (2): 整数型
・vbLong (3): 長整数型
・vbSingle (4): 単精度浮動小数点型
・vbDouble (5): 倍精度浮動小数点型
・vbCurrency (6): 通貨型
・vbDate (7): 日付型
・vbString (8): 文字列型
・vbObject (9): オブジェクト型
・vbError (10): エラー型
・vbBoolean (11): ブール型
・vbVariant (12): Variant 型 (配列)
・vbDataObject (13): データアクセスオブジェクト型
・vbDecimal (14): Decimal 型
・vbByte (17): バイト型

このように、VarType関数を使うことで、変数のデータ型を動的に確認し、適切な処理を行えます。

Excel VBAで自動化するコードのベースを習得したい方におすすめ!

VBAエキスパート資格は、日常業務でExcelを多用し、手動作業を減らしたいと考えている方には価値あるものです。

ExcelVBAエキスパートベーシック
仕事の効率をあげるためにExcelVBAを利用する人が対象の問題集です。


ExcelVBAエキスパートスタンダード

ExcelVBAの開発を仕事にする人が対象の問題集です。

 

Excel  VBA エキスパート資格について知りたい方は、下記「Excel VBAスキルアップを目指すなら知っておきたいVBAエキスパート」をご確認ください。