即効テクニック |
DefTypeステートメントを用いると、ある程度変数の宣言を簡略化できます。 例えば、今までInteger型の変数に"intABC"、のようにデータ型をあらわすような変数命名規則を用いていたような場合にはサンプルのような形にすると変数の宣言を簡略化できます。
'============================================= 'モジュールレベル変数 DefInt I 'Integer DefLng L 'Long DefBool B 'Boolean DefStr S 'String DefObj W 'Object総称型 DefVar V 'Variant '※DefInt A-E のようにするとAからEの範囲で指定できます。 '※通常どおりの宣言方法でAs 以下でデータ型を指定すると ' DefTypeステートメントの指定にかかわらず指定のデータ型 ' になります。 '※DefTypeステートメントはモジュールレベルでのみ有効 '============================================= Private Sub CommandButton1_Click() Dim intTemp, blnTemp, strTemp, WB, WS, var1, var2 Dim MSG As String intTemp = 100 blnTemp = True strTemp = "Excel!" Set WB = ActiveWorkbook Set WS = ActiveSheet var1 = 100 var2 = "OFFICE" MSG = intTemp & " : " & TypeName(intTemp) & vbCrLf MSG = MSG & blnTemp & " : " & TypeName(blnTemp) & vbCrLf MSG = MSG & strTemp & " : " & TypeName(strTemp) & vbCrLf MSG = MSG & WB.Name & " : " & TypeName(WB) & vbCrLf MSG = MSG & WS.Name & " : " & TypeName(WS) & vbCrLf MSG = MSG & var1 & " : " & TypeName(var1) & vbCrLf MSG = MSG & var2 & " : " & TypeName(var2) & vbCrLf MsgBox MSG End Sub
※サンプルの実行結果は順に・・・ Integer Boolean String Workbook Worksheet Integer String '============================================= DefTypeステートメントの一覧 '============================================= DefBool ブール型 (Boolean) DefByte バイト型 (Byte) DefInt 整数型 (Integer) DefLng 長整数型 (Long) DefCur 通貨型 (Currency) DefSng 単精度浮動小数点数型 (Single) DefDbl 倍精度浮動小数点数型 (Double) DefDate 日付型 (Date) DefStr 文字列型 (String) DefObj オブジェクト型 (Object) DefVar バリアント型 (Variant)