Excel VBA質問箱 IV

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

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


21032 / 76738 ←次へ | 前へ→

【61112】Re:一定時間選択変更がなければ上書保存でループにハマル
発言  n  - 09/4/9(木) 22:39 -

引用なし
パスワード
   SelectionChangeの度にTimerStop/TimerStartを繰り返すのは非効率のような気がします。
SelectionChangeで変更時間のみを記録して、OnTime実行時にチェック&再セットしてはいかがでしょう。
以下、一例です。

'-------------------------------------------------
'標準モジュール
Option Explicit

Public changeTime As Date
Public setTime  As Date
Public Const interval = "0:00:10"

Sub timerStart()
  changeTime = Now
  setTime = Now + TimeValue(interval)
  Application.OnTime setTime, "TimeCheck"
End Sub

Sub TimeCheck()
  If setTime - TimeValue(interval) < changeTime Then
    setTime = changeTime + TimeValue(interval)
    Application.OnTime setTime, "TimeCheck"
  Else
    Call test
  End If
End Sub

Sub test()
  UserForm1.Show
End Sub
'-------------------------------------------------
'UserForm1
Option Explicit
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Private tm_continue As Boolean

Private Sub CommandButton1_Click()
  tm_continue = True
End Sub

Private Sub UserForm_Activate()
  Dim i As Integer

  Me.Repaint
  For i = 10 To 0 Step -1
    Me.Label1 = i
    DoEvents
    If tm_continue Then Exit For
    Sleep 1000
  Next i
  Unload Me
  If tm_continue Then
    setTime = Now + TimeValue(interval)
    Application.OnTime setTime, "TimeCheck"
  Else
    MsgBox "close" 'Close処理
  End If
End Sub
'-------------------------------------------------
'ThisWorkbookモジュール
Option Explicit

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
  changeTime = Now
End Sub

Private Sub Workbook_BeforeClose(Cancel As Boolean)
  Application.OnTime setTime, "TimeCheck", , False
End Sub

#常に上書き保存する運用で良いかどうかは別として。
0 hits

【61104】一定時間選択変更がなければ上書保存でループにハマル ON 09/4/9(木) 16:28 質問
【61105】Re:一定時間選択変更がなければ上書保存で... ON 09/4/9(木) 16:41 発言
【61106】Re:一定時間選択変更がなければ上書保存で... ON 09/4/9(木) 17:02 発言
【61112】Re:一定時間選択変更がなければ上書保存で... n 09/4/9(木) 22:39 発言
【61115】Re:一定時間選択変更がなければ上書保存で... ON 09/4/10(金) 10:11 お礼
【61123】Re:一定時間選択変更がなければ上書保存で... n 09/4/10(金) 12:12 発言
【61124】Re:一定時間選択変更がなければ上書保存で... Abyss 09/4/10(金) 12:29 発言
【61133】Re:一定時間選択変更がなければ上書保存で... ON 09/4/10(金) 18:22 お礼
【61135】Re:一定時間選択変更がなければ上書保存で... n 09/4/10(金) 20:52 発言
【61136】Re:一定時間選択変更がなければ上書保存で... Abyss 09/4/10(金) 22:07 発言
【61140】Re:一定時間選択変更がなければ上書保存で... Abyss 09/4/10(金) 23:06 発言
【61142】Re:一定時間選択変更がなければ上書保存で... n 09/4/11(土) 2:31 発言
【61176】Re:一定時間選択変更がなければ上書保存で... ON 09/4/14(火) 16:00 質問
【61177】Re:一定時間選択変更がなければ上書保存で... ON 09/4/14(火) 16:32 質問
【61179】Re:一定時間選択変更がなければ上書保存で... n 09/4/14(火) 19:14 発言
【61183】Re:一定時間選択変更がなければ上書保存で... n 09/4/15(水) 0:24 発言
【61187】Re:一定時間選択変更がなければ上書保存で... ON 09/4/15(水) 10:43 お礼
【61188】Re:一定時間選択変更がなければ上書保存で... n 09/4/15(水) 12:44 発言
【61189】Re:一定時間選択変更がなければ上書保存で... ON 09/4/15(水) 13:02 発言
【61190】Re:一定時間選択変更がなければ上書保存で... n 09/4/15(水) 15:00 発言
【61192】Re:一定時間選択変更がなければ上書保存で... neptune 09/4/15(水) 15:35 発言
【61193】Re:一定時間選択変更がなければ上書保存で... ON 09/4/15(水) 17:43 お礼
【61198】Re:一定時間選択変更がなければ上書保存で... Abyss 09/4/15(水) 23:38 発言
【61221】Re:一定時間選択変更がなければ上書保存で... ON 09/4/16(木) 15:59 お礼

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