Excel VBA質問箱 IV

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

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


17819 / 76732 ←次へ | 前へ→

【64361】DoEventsの使い方について教えてください
質問  hide  - 10/1/31(日) 15:23 -

引用なし
パスワード
   VBA初心者です。

Excel2007で下のプログラムを作ってみました。

このプログラムの動作中に任意のセルに書き込みを行うと
プログラムの途中でカウントが停止します。
セルへのダブルクリックでも同様の結果になります。
どうもDoEventsからプログラムに制御が戻ってこないようです。
プログラムには排他処理を入れていませんが、多重起動はして
いませんし、他のプログラムも存在しません。

カウントアップしながらキー入力できれば希望の動作となる
のですがDoEventsの使用方法を間違えているのでしょうか。
その場合どのような関数を使えば良いのか教えてください。

Option Explicit

Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)

Public Sub test()

  Worksheets("Sheet1").Cells(1, 1).Value = 0
     
  While Worksheets("Sheet1").Cells(1, 1).Value < 60

      Worksheets("Sheet1").Cells(1, 1).Value = _
        Worksheets("Sheet1").Cells(1, 1).Value + 1
      
      DoEvents
      
      Sleep (100)

  Wend

End Sub
3 hits

【64361】DoEventsの使い方について教えてください hide 10/1/31(日) 15:23 質問
【64364】Re:DoEventsの使い方について教えてください Abyss 10/1/31(日) 16:28 発言
【64367】Re:DoEventsの使い方について教えてください hide 10/1/31(日) 17:08 お礼

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