Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


11703 / 13645 ツリー ←次へ | 前へ→

【14554】タイマーイベントをミリ秒単位で ぐうぐう 04/6/1(火) 18:31 質問[未読]
【14555】Re:タイマーイベントをミリ秒単位で ちゃっぴ 04/6/1(火) 18:47 回答[未読]
【14557】Re:タイマーイベントをミリ秒単位で ちゃっぴ 04/6/1(火) 18:57 回答[未読]
【14556】Re:タイマーイベントをミリ秒単位で ちん 04/6/1(火) 18:57 回答[未読]
【14636】Re:タイマーイベントをミリ秒単位で ぐうぐう 04/6/3(木) 13:13 お礼[未読]

【14554】タイマーイベントをミリ秒単位で
質問  ぐうぐう  - 04/6/1(火) 18:31 -

引用なし
パスワード
   はじめまして。
タイマーイベントをミリ秒単位で
発生させる方法をご存知の方がいたら教えていただけないでしょうか。

現在はしたのようにしていますが
next_on = Now() + TimeValue("00:00:03")
Application.OnTime Next_on, "GOGO" 

next_onにミリ秒単位で指定したいのです。

よろしくお願いします。


【14555】Re:タイマーイベントをミリ秒単位で
回答  ちゃっぴ  - 04/6/1(火) 18:47 -

引用なし
パスワード
   OnTimeメソッドの引数は
バリアント型 (Variant) の値を使用します。プロシージャを実行する時刻を指定します。

とヘルプにあり、この場合渡される内部形式は日付型(Date)だと思います。

また、Date型のヘルプには
西暦 100 年 1 月 1 日〜西暦 9999 年 12 月 31 日の範囲の日付と、0:00:00 〜 23:59:59 

となっているので、おそらくですが、OnTimeメソッドでは出来ないと思います。

【14556】Re:タイマーイベントをミリ秒単位で
回答  ちん  - 04/6/1(火) 18:57 -

引用なし
パスワード
   ぐうぐう さん、ちゃっぴさん今晩は、ちんといいます。
API関数の「SLEEP」を使用してはどうでしょうか。

Declare Sub Sleep Lib "Kernel32" (ByVal dwMilliseconds As Long)
Sub a1()
  
  Debug.Print "Start Time=" + Format(Time, "hh:mm:ss")
  For i1 = 1 To 100
   Sleep (20)
  Next i1
  Debug.Print "END Time=" + Format(Time, "hh:mm:ss")
End Sub

1ミリ単位から指定できます。(Sleep(1))

以上、参考までに・・・

▼ぐうぐう さん:
>はじめまして。
>タイマーイベントをミリ秒単位で
>発生させる方法をご存知の方がいたら教えていただけないでしょうか。
>
>現在はしたのようにしていますが
>next_on = Now() + TimeValue("00:00:03")
>Application.OnTime Next_on, "GOGO" 
>
>next_onにミリ秒単位で指定したいのです。
>
>よろしくお願いします。
>

【14557】Re:タイマーイベントをミリ秒単位で
回答  ちゃっぴ  - 04/6/1(火) 18:57 -

引用なし
パスワード
   過去ログです。
http://www.vbalab.net/vbaqa/c-board.cgi?cmd=one;no=5005;id=excel

私も同じことかこうかなぁ〜と思って検索したらやはりありました。

【14636】Re:タイマーイベントをミリ秒単位で
お礼  ぐうぐう  - 04/6/3(木) 13:13 -

引用なし
パスワード
   お返事ありがとございます。
参考にさせていただいたら、うまくいきました。
ありがとうございました。

▼ちん さん:
>ぐうぐう さん、ちゃっぴさん今晩は、ちんといいます。
>API関数の「SLEEP」を使用してはどうでしょうか。
>
>Declare Sub Sleep Lib "Kernel32" (ByVal dwMilliseconds As Long)
>Sub a1()
>  
>  Debug.Print "Start Time=" + Format(Time, "hh:mm:ss")
>  For i1 = 1 To 100
>   Sleep (20)
>  Next i1
>  Debug.Print "END Time=" + Format(Time, "hh:mm:ss")
>End Sub
>
>1ミリ単位から指定できます。(Sleep(1))
>
>以上、参考までに・・・
>
>▼ぐうぐう さん:
>>はじめまして。
>>タイマーイベントをミリ秒単位で
>>発生させる方法をご存知の方がいたら教えていただけないでしょうか。
>>
>>現在はしたのようにしていますが
>>next_on = Now() + TimeValue("00:00:03")
>>Application.OnTime Next_on, "GOGO" 
>>
>>next_onにミリ秒単位で指定したいのです。
>>
>>よろしくお願いします。
>>

11703 / 13645 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free