返回列表 上一主題 發帖

執行時間問題?

回復 31# c_c_lai
這樣也會自動化
DDE連結工作表模組程式碼
  1. 'DDE連結 工作表的預設事件 :  當公式資料有變動時會觸發此事件
  2. Dim TheTime As Date  '記錄下一分鐘的時間 : DDE連結工作表模組的私用變數
  3. Private Sub Worksheet_Calculate()
  4.      Application.EnableEvents = False
  5.     If IsError([C2]) Or Time < #8:45:00 AM# Then
  6.         Sheets("策略記錄").[a1].CurrentRegion.Offset(1).Clear
  7.         Application.EnableEvents = True
  8.         Exit Sub
  9.     ElseIf Time > #1:30:00 PM# Then
  10.        Application.EnableEvents = True
  11.         Exit Sub
  12.     End If   
  13.     If CDbl(TheTime) = 0 Or TheTime <= Time Then    ' TheTime變數未給值  or   記錄下一分鐘的時間>= Time
  14.         With Sheets("策略記錄")
  15.             .Cells(.Rows.Count, 1).End(xlUp).Offset(1).EntireRow = Rows(2).Value
  16.         End With
  17.         TheTime = TimeSerial(Hour(Time), Minute(Time), 0) + #12:01:00 AM#
  18.     End If
  19.     Application.EnableEvents = True
  20. End Sub
複製代碼

TOP

回復 35# c_c_lai
  1. '#   #  為系統輸入日期時間的關鍵字
  2. '#00:00#  系統自動生成 -> #12:00:00 AM#
  3. '#11:59#  系統自動生成 -> #11:59:00 AM#
  4. '#13:01#  系統自動生成 -> #1:01:00 PM#
  5. '#23:01#  系統自動生成 -> #11:01:00 PM#
  6. Option Explicit
  7. Sub Ex()
  8.     Dim TheTime As Date, xTime As Date
  9.     MsgBox "#11:59:59 AM# + #12:00:01 AM#" & Chr(10) & CDate(#11:59:59 AM# + #12:00:01 AM#)
  10.     TheTime = #8:45:05 AM#
  11.     xTime = TimeSerial(Hour(TheTime), 0, 0)
  12.     MsgBox xTime
  13.     xTime = TimeSerial(Hour(TheTime), Minute(TheTime), 0)
  14.     MsgBox xTime
  15.     xTime = TimeSerial(Hour(TheTime), Minute(TheTime), 0) + #12:01:00 AM#
  16.     MsgBox xTime
  17. End Sub
複製代碼

TOP

        靜思自在 : 【時日莫空過】一個人在世間做了多少事,就等於壽命有多長。因此必須與時間競爭,切莫使時日空過。
返回列表 上一主題