VBA性能向上委員会VBA性能向上委員会VBAプログラミングの実行速度に関して、より速い性能を求めて徹底検証をします。検証を行うために『時間を取得する関数』を知る必要があります。時間を取得する関数には、以下のものがあります。TimeTimerGetTickCounttimeGetTimeこれらの関数を理解したうえで性能測定に使用することをおすすめします。Time関数とは現在のシステム時刻を返す関数です。現在の時刻が午後の3時15分20秒なら、Date型の、15:15:20を返します。時分秒が取得できますが、ミリ秒は取得できません。徹底検証するには不十分な関数です。1秒未満の高速マクロを検証するためには、この関数は必要ありません。Timer関数とは午前0時から経過した秒数を返す関数です。現在の時刻が午後の3時15分20.602秒なら、Single型の、11720.602を返します。ミリ秒まで取得でき、浮動小数点計算さえ正確にできれば、より精密な測定ができそうですが、あくまで午前0時からの経過時間ですので日付をまたぐ測定はできません。Windowsではミリ秒まで返しますが、Macintoshでは秒までしか返さないのでMacintoshを使用している方は注意が必要です。GetTickCount関数とはシステム起動時から経過した秒数を返す関数です。システム起動時から30分20.602秒経っているなら、Long型の、1820602を返します。ミリ秒まで取得でき、より精密な測定ができそうですが、OSによっては精度が非常に悪いことがわかっています。timeGetTime関数とはシステム起動時から経過した秒数を返す関数です。システム起動時から30分20.602秒経っているなら、Long型の、1820602を返します。基本的には、GetTickCount関数と同じです。GetTickCount関数の精度がOSによって非常に悪くなることより、timeGetTime関数を使用するほうが無難でしょうか。使用PC本サイトの性能測定に使用したPCは以下の通りです。