項目
$が付いている関数
概要
VBAの関数には、Mid$、Left$、Right$、Trim$・・・など$が付いている関数があります。
$なしの関数と何が違うかというと、$が付いている関数は戻り値がString、
$なしの関数はバリアントを返します。
$付いている関数の方が処理速度が高速に動作します。
しかし、例のように$付き関数の方が高速に動作しますが、その差はよほどの重い処理でない限り
効果はないかと。
※$付いている関数には引数にNull値を渡すことはできません。渡すと実行時エラーで落ちます。
例
Option Compare Database
Option Explicit
Private Sub コマンド0_Click()
Dim sng開始時間 As Single
Dim sng終了時間 As Single
Dim i As Long
Dim wk
'【$無】10万回実行
sng開始時間 = Timer
For i = 1 To 100000
wk = Trim(" Accessむかむか ")
Next i
sng終了時間 = Timer
Debug.Print "【$無処理時間】:" & (sng終了時間 - sng開始時間) & "秒"
'【$付】10万回実行
sng開始時間 = Timer
For i = 1 To 100000
wk = Trim$(" Accessむかむか ")
Next i
sng終了時間 = Timer
Debug.Print "【$付処理時間】:" & (sng終了時間 - sng開始時間) & "秒"
'■結果■
'【$無処理時間】:0.03125秒
'【$付処理時間】:0.015625秒
End Sub