Board logo

標題: [發問] 如何讓和程式定期新 [打印本頁]

作者: brabus    時間: 2012-6-26 20:55     標題: 如何讓和程式定期新

小弟有作一個統計的表格
內容有些參數會定期修正
所以程式定期要更新才可以
可是有同事懶得更新
所以提供的報表常出錯
我是否可以
強迫他們於每年1,4,7,10月1號(或者離上次更新超過90天)
一定要更新程式
否則報表就會打不開
請高手們幫我想想該怎麼解決
作者: GBKEE    時間: 2012-6-27 10:01

回復 1# brabus
試試看
  1. Option Explicit
  2. Private Sub Workbook_Open()
  3.      Names.Add "UpdateDate", Date - 90, False
  4.      '測試時請先在此定義名稱 然後刪掉這行程式碼
  5.      DayCheck
  6. End Sub
  7. Private Sub DayCheck()
  8.      Dim Msg As Boolean, N As Name
  9.      For Each N In Names
  10.         If N.Name = "UpdateDate" Then   '檢察更新日期是否存在
  11.             Msg = True
  12.             Exit For
  13.         End If
  14.      Next
  15.      If Not Msg Then
  16.         你的更新程式
  17.      ElseIf CDbl(Date) - [UpdateDate] >= 90 Or Day(Date) = 1 Then     '
  18.        If Day(Date) = 1 Then                  '如是每月的第1天
  19.             Select Case Month(Date)            '月份
  20.                 Case 1, 4, 7, 10
  21.                     MsgBox "更新程式"
  22.                     你的更新程式               '執行更新程式
  23.             End Select
  24.         Else                                   '>=90天
  25.             MsgBox "更新程式"
  26.             你的更新程式                        '執行更新程式
  27.         End If
  28.      End If
  29. End Sub
  30. Private Sub 你的更新程式()
  31.     '更新程式碼
  32.     '更新程式碼
  33.     '更新程式碼
  34.     '更新程式碼
  35.     Names.Add "UpdateDate", Date, False   '最後更新日期
  36. End Sub
複製代碼

作者: hugh0620    時間: 2012-6-27 12:49

回復 1# brabus


    建議不要用月份的 1 號  當更新的時間點~
    因為遇到1號是假日時~ 算是要更新還是不更新呢
   
     採用lead time 會比較好一點~

       僅供參考~
作者: brabus    時間: 2012-6-27 15:06

回復  brabus


    建議不要用月份的 1 號  當更新的時間點~
    因為遇到1號是假日時~ 算是要更新還 ...
hugh0620 發表於 2012-6-27 12:49

您提的這個點我比較不怕
反正在1月(4.7.10月)1號以後,(或指定日期過後)
一定要更新過後才可以使用
我會在程式內寫入日期
不一定要在1號那天更新
謝謝你的提醒
作者: brabus    時間: 2012-6-27 15:07

回復  brabus
試試看
GBKEE 發表於 2012-6-27 10:01

謝謝您的指教
只是小弟程式的功力太差
要研究一下才可以體會
作者: GBKEE    時間: 2012-6-27 16:43

回復 4# brabus
可修改3天內更新避開週六,週日.
ElseIf CDbl(Date) - [UpdateDate] >= 90 Or Day(Date) >= 1 And Day(Date) <= 3 Then     '




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)