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

¬°¤°»ò§ÚªºExcel ¤£·|°Ê ??

HI~ª©¥D
¤w¸g¥i¥H¥Î¤F, ÁÂÁÂÀ°¦£~
¥t¥~¦A½Ð°Ý¤@¤U(ÁöµM­ì¨Óªº°µªk¤]¥i¥H)
1.¦pªG¨Ï¥ÎDDE¤Wªº®É¶¡, ­n«ç»ò°µ¨ì¨C´X¤ÀÄÁ§ì¤@¦¸¸ê®Æ(¦]¬°¦³®É­Ô·|¸ò¹q¸£ªº®É¶¡¤£¤Ó¤@¼Ë)
DDE®É¶¡®æ¦¡¬OÃþ¦ü¹³134459 --->13:44:59
2.DDE¤@ª½¦b¸õ°Ê,¥i¥H¥Î¨Ï²Ö¿n¶q°O¿ý¶Ü?¤ñ¦p°O¿ý²Ö¿n¤@¤ÀÄÁªº¶R½æ¶q
3.Private Sub Worksheet_Calculate() ¦³¿ìªk¦b¨ä¤¤¤@¨â­ÓÀx¦s®æµo¥ÍÅܰʤ~IJµovb¶Ü?
ªì¾ÇªÌcolor

TOP

¥»©«³Ì«á¥Ñ GBKEE ©ó 2011-11-15 08:20 ½s¿è

¦^´_ 11# color790
½Ðªþ¤WÀÉ®×½d¨Ò ¬Ý¬Ý

TOP

DDE-1.rar (16.98 KB)
hi~ª©¥D, ¤£¦n·N«ä, ¦³2­Ó·Qªk·Q½Ð§AÀ°¦£
1. ®É¶¡¬O·Q¥Hdde¤Wªº®É¶¡¬°¥D,¨C5¤ÀÄÁ(©Î1¤ÀÄÁ) °O¿ý»ù®æ,®É¶¡,³Ì°ª»ù,³Ì§C»ù,¶}©l»ù,µ²§ô»ù¤Î²Ö¿n[G8] & [I8]ªº¶q

2. ¥t¤@­Ó·Qªk¬O·Q[G8] & [I8]µo¥ÍÅܤÆ, ¤~°O¿ý®É¶¡,»ù®æ
ªì¾ÇªÌcolor

TOP

¦^´_ 13# color790
  1. '¤u§@ªí1ªºµ{¦¡
  2. Dim S As String   '¤u§@ªí1ªº ¨p¥ÎÅܼÆ
  3. Private Sub Worksheet_Calculate()
  4.     Application.EnableEvents = False
  5.     If S <> [G8] & [i8] And [G8] & [i8] <> "" Then
  6.         Cells(Rows.Count, "k").End(xlUp).Offset(1).Resize(1, 3) = Array(Time, [G8], [i8])
  7.         S = [G8] & [i8]
  8.     End If
  9.     Application.EnableEvents = True
  10. End Sub
½Æ»s¥N½X
  1. 'Module1ªºµ{§Ç
  2. Sub AUTO_OPEN()
  3.     ¥¨¶°1
  4. End Sub
  5. Private Sub ¥¨¶°1()
  6.     Dim ¶}½L®É¶¡ As String, ¦¬½L®É¶¡  As String, DEE®É¶¡, Deehh As String, Deemm As String
  7.     Dim Time_Step As Date
  8.     ¶}½L®É¶¡ = "B5"
  9.     ¦¬½L®É¶¡ = "D5"
  10.     DEE®É¶¡ = "C2"
  11.     Dim TESTTr  '¦¹ÅܼƬO´ú¸Õµ¹§A¬Ýªº
  12.     With ¤u§@ªí1
  13.         If .Range(¶}½L®É¶¡) > Time Then  ' ©|¥¼¶}½L   'µ¥­Ô¶}½L®É¶¡¨ì°õ¦æ
  14.             Application.OnTime .Range("¶}½L®É¶¡"), "¥¨¶°1"
  15.         ElseIf .Range(¦¬½L®É¶¡) < Time Then ' ¤w¸g¦¬½L   'Ãö³¬¥¨¶°
  16.             Exit Sub
  17.         End If
  18.         Time_Step = #12:05:00 AM#      '³]©w¶¡¹j®É¶¡: 5¤ÀÄÁ
  19.         'Time_Step = #12:01:00 AM#     '³]©w¶¡¹j®É¶¡: 1¤ÀÄÁ
  20.          ' 1 = 1¤ÀÄÁ ; ¤@¤ÑªºÁ`¤ÀÄÁ¼Æ 24 * 60 =1440
  21.           '1¤ÀÄÁ    #12:01:00 AM# * 1400
  22.          'Time_Step* 1400 = ³]©w¶¡¹j ? ¤ÀÄÁ
  23.          
  24.          '**¦³¿ù»~ Tr = Int((Time - .Range(¶}½L®É¶¡) ) * 1440) + 30  '¨C®t 300 ¬í´N´«¤@¦C***
  25.          '¤W¦¡À³¬°¶Ç¦^->  ¶¡¹jªºÁ`¤ÀÄÁ¼Æ + 30
  26.            Tr = Int(Int((Time - .Range(¶}½L®É¶¡)) * 1440) / 5) '¨C®t 300 ¬í ¦¹ÅܼƬO´ú¸Õµ¹§A¬Ýªº
  27.            TESTTr = Int((Time - .Range(¶}½L®É¶¡)) / Time_Step)  '¦¹ÅܼƬO´ú¸Õµ¹§A¬Ýªº
  28.            MsgBox TESTTr = Tr                                  '¦¹ÅܼƬO´ú¸Õµ¹§A¬Ýªº
  29.         If .[D2] <> "-" And .[D2] <> "###" Then   '²M½Lªºª¬ºA, ¤£¨ú¨ä¸ê®Æ
  30.             Tr = Int((Time - .Range(¶}½L®É¶¡)) / Time_Step) + 30
  31.             ' Time_Step ¤ÀÄÁ¤@¦C    ->  ±q²Ä30¦C¶}©l **
  32.             Range("K" & Tr) = Time                '¥[¤W®É¶¡
  33.             If Range("L" & Tr) = "" Then Range("L" & Tr) = Range("D2")  '¶}©l»ù
  34.             If Range("M" & Tr) = "" Or Range("D2") > Range("M" & Tr) _
  35.                 Then Range("M" & Tr) = Range("D2")                      '³Ì°ª»ù
  36.             If Range("N" & Tr) = "" Or Range("D2") < Range("N" & Tr) _
  37.                 Then Range("N" & Tr) = Range("D2")                      '³Ì§C»ù
  38.             Range("O" & Tr) = Range("D2")                               'µ²§ô»ù
  39.         End If
  40.         Deehh = Mid(.Range(DEE®É¶¡), 1, 2)
  41.         Deemm = Mid(.Range(DEE®É¶¡), 3, 2)
  42.         Deemm = (Int(Deemm / (Time_Step * 1440)) + 1) * (Time_Step * 1440)
  43.         If Val(Deemm)>=60 Then
  44.             Deehh = Deehh + 1
  45.             Deemm = "00"
  46.         End If
  47.         Application.OnTime TimeSerial(Deehh, Deemm, 0) + Time_Step, "¥¨¶°1"
  48.     End With
  49. End Sub
½Æ»s¥N½X

TOP

¤Ñ°Ú.....¤Ó·PÁ§A¤F,ª©¥D
¦^®a¦A¨Ó¸Õ¤@¤U, ·P®¦:'(
ªì¾ÇªÌcolor

TOP

HI~ª©¥D, ¦A³Â·Ð§A¤@¤U~
²Ä¤@­Óµ{¦¡¦b­è¥´¶}µ{¦¡®É, ¤U­±³o¤@¦æ·|¦³¿ù»~²£¥Í
If S <> [G8] & [i8] And [G8] & [i8] <> "" Then
¤£¹L¦b°»¿ù«á°±¤î¦A«ö°õ¦æ´NOK¤F,¦A³Â·Ð§A¤@¤U, ÁÂÁª©¥D~
ªì¾ÇªÌcolor

TOP

¦^´_ 16# color790
§AªºDEE ¸ê®Æ¬°¿ù»~­È #REF!
  1. Private Sub Worksheet_Calculate()
  2.     Application.EnableEvents = False
  3.     If IsError([G8]) = 0 And IsError([i8]) = 0 Then
  4.         If S <> [G8] & [i8] And [G8] & [i8] <> "" Then
  5.             Cells(Rows.Count, "k").End(xlUp).Offset(1).Resize(1, 3) = Array(Time, [G8], [i8])
  6.             S = [G8] & [i8]
  7.         End If
  8.     End If
  9.     Application.EnableEvents = True
  10. End Sub
½Æ»s¥N½X

TOP

ÁÂÁª©¥DªºÀ°¦£
ªì¾ÇªÌcolor

TOP

        ÀR«ä¦Û¦b : ºw¤ô¦¨ªe¡C²É¦Ì¦¨ÅÚ¡A¤Å»´¤vÆF¡A¤Å¥Hµ½¤p¦Ó¤£¬°¡C
ªð¦^¦Cªí ¤W¤@¥DÃD