ªð¦^¦Cªí ¤W¤@¥DÃD µo©«

[µo°Ý] §Ú¤]·Q°ÝDDE§Q¥ÎPrivate Sub Worksheet_Calculate()¨ú¸ê®Æ¤è¦¡

¥»©«³Ì«á¥Ñ GBKEE ©ó 2011-11-12 06:44 ½s¿è

¦^´_ 5# albertbug
[ 2011/11/12 §ó¥¿ ]
¸Õ¸Õ¬Ý
  1. Private Sub Worksheet_Calculate()
  2.     Dim startTime, stopTime
  3.     Dim Tr As String, Time_Step As Date
  4.    
  5.     Time_Step = #12:05:00 AM#     '³]©w¶¡¹j®É¶¡: 5¤ÀÄÁ->300¬í
  6.     'Time_Step = #12:00:01 AM#     '³]©w¶¡¹j®É¶¡: 1¬í
  7.    
  8.     startTime = Range("A6") '¶}½L®É¶¡, ¨Ò¦p: "09:00:00 AM"
  9.     stopTime = Range("A8")  '¦¬½L®É¶¡, ¨Ò¦p: "01:30:00 PM"
  10.     If startTime > Time Then  '©|¥¼¶}½L
  11.         Exit Sub
  12.     ElseIf stopTime < Time Then '¤w¸g¦¬½L
  13.         Exit Sub
  14.     Else     
  15.       If [C2] <> "-" And [C2] <> "###" Then   '²M½Lªºª¬ºA, ¤£¨ú¨ä¸ê®Æ
  16.             'Tr = Int((nowTime - startTime) * 1440) + 30  '¨C®t 300 ¬í´N´«¤@¦C
  17.             Tr = Int((Time - startTime) / Time_Step) + 30 ' ¨C5¤ÀÄÁ¤@¦C ±q²Ä30¦C¶}©l
  18.             If Range("D" & Tr) = "" Then Range("D" & Tr) = Range("C2")  '¶}©l»ù
  19.             If Range("E" & Tr) = "" Or Range("C2") > Range("E" & Tr) _
  20.                 Then Range("E" & Tr) = Range("C2")                      '³Ì°ª»ù
  21.             If Range("F" & Tr) = "" Or Range("C2") < Range("F" & Tr) _
  22.                 Then Range("F" & Tr) = Range("C2")                      '³Ì§C»ù
  23.             Range("G" & Tr) = Range("C2")                               'µ²§ô»ù
  24.         End If
  25.     End If
  26. End Sub
½Æ»s¥N½X

TOP

¦^´_ 7# albertbug
«Øij§A«e­±¥[¤W Range("C" & tr) = Format(Time, "HH:MM:SS") ¨Ó¬Ý¬Ý
¬Ý¬Ý§AªþÀɤW66¦C-786¦C¤W¦³¤£³sÄòªº¸ê®Æ,¸ê®Æ¬O¦³°O¿ý¤U¨Óªº.

TOP

¦^´_ 10# albertbug
If Range("D" & Tr) = "" Then Range("D" & Tr) = Range("C2")  '¶}©l»ù
            I = Range("D" & Tr) - Range("D" & Tr).Offset(-1)      ' - ¤W¤@¦C         
            Msg = ""
            If I > 0 Then Msg = "+"                  '
            If I < 0 Then Msg = "-"
            Range("??" & Tr) = Msg                                    '?? §A­n©ñªºÄæ¦ì¦Û¤v³]
            If Range("E" & Tr) = "" Or Range("C2") > Range("E" & Tr) _
                Then Range("E" & Tr) = Range("C2")                      '³Ì°ª»ù
            I = Range("E" & Tr) - Range("E" & Tr).Offset(-1)
            Msg = ""
            If I > 0 Then Msg = "+"
            If I < 0 Then Msg = "-"
           Range("??" & Tr) = Msg

TOP

        ÀR«ä¦Û¦b : ¦³¤ß´N¦³ºÖ¡A¦³Ä@´N¦³¤O¡A¦Û³yºÖ¥Ð¡A¦Û±oºÖ½t¡C
ªð¦^¦Cªí ¤W¤@¥DÃD