. 【VBA】時間を測るストップウォッチ(タイマー)のコードと使い方を紹介
【VBA】時間を測るストップウォッチ(タイマー)のコードと使い方を紹介
【VBA】時間を測るストップウォッチ(タイマー)のコードと使い方を紹介

【VBA】時間を測るストップウォッチ(タイマー)のコードと使い方を紹介

【VBA】時間を測るストップウォッチ(タイマー)のコードと使い方を紹介 2024 7/25 広告 Excel 2024年7月25日

こんにちは!大阪市を拠点に活動している『縁紡ぐ』の稲垣です。

SWELLを使ったホームページ制作や、Excel、ACCESS、RPAなどのシステム開発を行っています。また、Excel、Word、Outlookの研修や、情報セキュリティ研修も行っています。身近なITの相談相手になりたいと思っています。

お気軽にお問い合わせください。

目次

処理の時間を測る

VBAは、大量のデータを処理するときに処理の速度が問題になることがあります。コードを改修する前に、実際に処理速度を測ることで、どれだけ改善したかも分かりやすくなります。

標準モジュールとクラスそれぞれでの作成方法について紹介します。

標準モジュールでの作成方法 STEP標準モジュールを作成し、オブジェクト名をStopWatchにする STEPコードを作成する ' ========================================================================== ' 概要 : 処理時間を計測するタイマー ' 作成日 / 作成者 : 2024/7/24 合同会社縁紡ぐ 稲垣敦 ' 修正履歴 : ' ========================================================================== Option Explicit Private mStartTime As Double Private mEndTime As Double ' タイマーを開始する Public Sub StartTimer() mStartTime = Timer End Sub ' タイマーを停止する Public Sub StopTimer() mEndTime = Timer End Sub ' 経過時間をフォーマットして文字列として取得する Public Function GetFormattedElapsedTime() As String GetFormattedElapsedTime = "処理にかかった時間:" & mEndTime - mStartTime & "秒" End Function STEP使ってみるコードサンプル ' 実行例 Sub Example() ' タイマーを開始 StopWatch.StartTimer ' 処理をここに追加 ' タイマーを停止 StopWatch.StopTimer ' 経過時間を表示 MsgBox StopWatch.GetFormattedElapsedTime() End Sub STEP結果が表示される クラスで作成する STEPクラスモジュールを作成し、オブジェクト名をStopWatchにする STEPコードを作成する ' ========================================================================== ' 概要 : 処理時間を計測するタイマー ' 作成日 / 作成者 : 2024/7/24 合同会社縁紡ぐ 稲垣敦 ' 修正履歴 : ' ========================================================================== Option Explicit Private mStartTime As Double Private mEndTime As Double ' タイマーを開始する Public Sub StartTimer() mStartTime = Timer End Sub ' タイマーを停止する Public Sub StopTimer() mEndTime = Timer End Sub ' 経過時間をフォーマットして文字列として取得する Public Function GetFormattedElapsedTime() As String GetFormattedElapsedTime = "処理にかかった時間:" & mEndTime - mStartTime & "秒" End Function STEP使ってみる ' 実行例 Sub Example() ' StopWatchクラスのインスタンスを作成 Dim myStopWatch As StopWatch Set myStopWatch = New StopWatch ' タイマーを開始 myStopWatch.StartTimer ' 処理をここに追加(例として3秒待つ) ' タイマーを停止 myStopWatch.StopTimer ' 経過時間を表示 MsgBox myStopWatch.GetFormattedElapsedTime() ' クラスのインスタンスを解放 Set myStopWatch = Nothing End Sub STEP結果が表示される Excel よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
📎📎📎📎📎📎📎📎📎📎