Excel VBA質問箱 IV

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

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


45187 / 76732 ←次へ | 前へ→

【36547】Re:処理を一定時間待つには
発言  ichinose  - 06/4/3(月) 10:42 -

引用なし
パスワード
   ▼てろてろ さん:
▼Blue さん:
おはようございます。

>># 流石に9〜17時の間、30秒周期だと(8*60*2=960回もマクロが走るわけで)重くなりそうですけど。
>
>いえ、違うのです。周期的にループさせずに行っても、10秒間、CPU100%になるのです。
>
>  T0 = Timer '30秒待つ
>  Do
>    DoEvents
>  Loop Until T0 + 30 < Timer
>
>この処理自体、そういった特性を持っているのでしょうか?
>一定周期でループさせる良い方法は他にないでしょうか?
これは、APIのSleepを使ってみて下さい。

Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Private Sub CommandButton1_Click()
  CommandButton1.Enabled = False
  T0 = Timer '30秒待つ
  Do
    Sleep 100
    DoEvents
  Loop Until T0 + 30 < Timer
  CommandButton1.Enabled = True
End Sub

こればっかりは、Application.waitでは駄目なんですよねえ!!
試してみて下さい。

6 hits

【36542】処理を一定時間待つには てろてろ 06/4/3(月) 10:09 質問
【36544】Re:処理を一定時間待つには Blue 06/4/3(月) 10:15 発言
【36545】Re:処理を一定時間待つには てろてろ 06/4/3(月) 10:34 質問
【36546】Re:処理を一定時間待つには Blue 06/4/3(月) 10:40 発言
【36547】Re:処理を一定時間待つには ichinose 06/4/3(月) 10:42 発言
【36550】Re:処理を一定時間待つには てろてろ 06/4/3(月) 11:10 質問
【36551】Re:処理を一定時間待つには Blue 06/4/3(月) 11:16 回答
【36552】Re:処理を一定時間待つには ichinose 06/4/3(月) 11:42 発言
【36553】Re:処理を一定時間待つには てろてろ 06/4/3(月) 11:49 お礼

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