ExcelWork.info

Excel(エクセル)のマクロ・VBA・関数・操作などのメモ

日付時刻:経過時間を取得( Timer 関数 )

   

Timer 関数の使い方


【書式】

result = Timer ()


【戻り値】

  • result  ・・・  当日午前 0 時から経過した秒数を表す単精度浮動小数点数型(Single)の値。


Timer 関数は、処理中に午前0時を超えた場合、値を「1日の総秒数を反転した値(-86,400 秒)」にリセットし、そこから経過秒数を加算していきます。さらに1日が経過し翌日の午前0時になると「 0 秒」となるので、日付をまたぐ場合は注意が必要です。
【対応策】
1.経過時間の差分の値の絶対値を Abs 関数等で算出して、その値で経過秒数を判定する。
2.「【参考】サンプルVBAソース2」のように、Timar 関数を使用しない。


Timer 関数の使用例

サンプルVBAソース


実行結果

Timer 関数 使用例


DoEvents 関数について
上記マクロ内には DoEvents というのがありますが、この「DoEvents関数」を使用することで、一時的に、他のアプリケーションが実行できるように Windows に制御を移すことが可能になります。
つまり、マクロを実行後、VBE 画面からマクロを停止することが可能になります。



【参考】サンプルVBAソース2



 - VBA基本 , ,

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

  関連記事

Mid ステートメント 例
文字列:文字列変数内の一部を置き換える(Mid・MidB ステートメント)

Mid・MidB ステートメントの使い方 【書式】 { Mid | MidB } …

文字列:文字列の一部を別の文字列で置換(Replace 関数)

Replace 関数の使い方 【書式】 result = Replace ( s …

ThisCell プロパティ
ユーザー定義関数:セルを取得する(ThisCell プロパティ)

入力されたセルを取得する ワークシート上で使用する Function プロシージ …

文字列:文字列を検索してその最初の文字位置を返す(InStr 関数,InStrB 関数)

InStr 関数・InStrB 関数の使い方 【書式】 result = { I …

no image
VBA の演算子(算術演算子)

算術演算子 算術演算を行うときに使用する演算子です。 ^(べき乗)、*(積)、/ …

指定した値を8進数で表記した文字列に変換する(Oct 関数)

Oct 関数 の使い方 【書式】 result = Oct ( expressi …

Randomize 関数 例1
乱数ジェネレータを初期化 (乱数系列を再設定) する(Randomize ステートメント)

Randomize ステートメントの使い方 Rnd 関数 を使用する前に使用しま …

RegExp オブジェクト Test メソッド
VBA で正規表現を使う(RegExp オブジェクトのメソッド)

RegExp オブジェクトのメソッド RegExp オブジェクトの詳細に関しては …

Choose 関数 例01
指定した数値に対応する選択肢の値・数式を返す(Choose 関数)

Choose 関数 の使い方 Choose 関数は、指定されたインデックス値(1 …

Resize プロパティ1
指定したセル範囲のサイズを変更(Resize プロパティ)

Resize プロパティ 指定したセル範囲のサイズ(行数や列数)を変更します。 …