VBA
1Dim i As Long 2Dim 時間 As Long 3省略 4 5Sub timer() 6Dim StartTime As Date: StartTime = TimeValue("08:00:00") 7Dim TimerInterval As Date: TimerInterval = TimeValue("00:01:00") 8 9If Time < StartTime Then 10 Application.OnTime StartTime, "timer" 11ElseIf Time < TimeValue("09:00:00") Then 12 Call 稼働 13 Application.OnTime Now() + TimerInterval, "timer" 14・ 15・ 16省略 17Else 18End If 19 20End Sub 21 22Sub 稼働() 23 24For i = 1 To Worksheets.Count 25 Sheets(i).Select 26 If Range("C3").Value <= Range("C4").Value Then 27 If Range("E5").Value >= Range("E6").Value Then 28 If Range("H1").Value = "" Then 29 30 Range("H1").Value = sign 31 時間 = Cells(Rows.Count, "I").End(xlUp).Row + 1 32 Range("I" & 時間).Value = Format(Now(), "Short Time") 33Else 34End If 35Else 36End If 37Else 38End If 39 40Next 41 42End Sub
VBAでFOR文の中でIFで条件分岐させている形なのですが、1分おきにFOR文を起動させています。
このインターバル時間は変更することなく、
同じ条件を繰り返し表示させないため、あるセルを空の状態であればという条件を加えて、それ以降は表記させないようにしています。
これを10分おきに再び同条件が満たせば表示させるようにするには、どういった書き方があるでしょうか?
宜しくお願いします。
現状のコードを提示しましょう
コードは、質問を編集し、<code>ボタンを押し、出てくる’’’の枠の中にコードを貼り付けてください
回答1件
あなたの回答
tips
プレビュー