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

DDE¸ê®Æ§ì¨ú,³v®æÅã¥Ü°ÝÃD

¦^´_ 1# jackson184
¶ÇÀɨӸոÕ

TOP

¦^´_ 3# jackson184
¦p¹Ï ´¡¤J¤@¼Ò²Õ ±N¤U¦C¨âµ{§Ç¶K¤W

  1. Option Explicit             '¦b¼Ò²Õ¼h¦¸¤¤±j­¢¨C­Ó¦b¼Ò²ÕùتºÅܼƳ£¥²¶·©ú½Tªº«Å§i¡C
  2. Dim Rng As Range            ' ³q¥Î©ó¼Ò²Õ(Module) ¤ºªº¨p¥ÎÅܼÆ
  3. Private Sub AUTO_OPEN()     '¦¹¥¨¶°©óÀɮ׶}±Ò®É·|¦Û°Ê°õ¦æ
  4.     With Sheets("90")
  5.         .UsedRange.Offset(1).Clear                '²M°£ «e¤@¤éªº¼Æ¾Ú
  6.         Set Rng = .Range("A2:A31,F2:F31,K2:K31")  '¼Æ¾Ú¶Ç¦^ªº°Ï°ì,¬°¦h­«½d³ò.
  7.     End With
  8.     If Time < TimeValue("08:45") Then             '¦­©ó¶}½L®É¶¡
  9.         Application.OnTime TimeValue("08:45"), "MyDee"    '³]©w©ó08:45 °õ¦æ MyDee µ{§Ç
  10.     ElseIf Time >= TimeValue("08:45") And Time <= TimeValue("13:30") Then '©ó¥æ©ö®É¶¡¤º
  11.         MyDee                                     ' °õ¦æ MyDee µ{§Ç
  12.     End If
  13. End Sub
  14. Private Sub MyDee()
  15.     Dim A As Integer, Ar(), R As Integer, C As Integer
  16.      If Time > TimeValue("13:30") Then Exit Sub     ' ¦¬½L®É¶¡«á °±¤î°õ¦æ
  17.     A = Application.CountA(Rng)             '­pºâ (¼Æ¾Ú¶Ç¦^ªº°Ï°ì)¦³¸ê®ÆÀx¦s®æªºÁ`¼Æ
  18.     If A <= 29 Then C = A + 1               'C ¬°  ¼Æ¾Ú¶Ç¦^ªº°Ï°ìªº¦C¦ì
  19.     If A Mod 30 >= 0 Then C = (A Mod 30) + 1
  20.     R = Int(A / 30) + 1                     'R ¬°¦h­«½d³òªº²Ä´X­Ó½d³ò
  21.     With Sheets("³sµ²")
  22.         Ar = Array(Now, A + 1, .Range("I2"), .Range("J2"))
  23.         'Ar ¬°¨ú±o  1. ®É¶¡, 2.¶µ¦¸,3.³Ì°ª»ù ,4,³Ì§C»ù  '§ä¤£¨ì ->  ¦¬½L»ù§ä¤£¨ì
  24.         'Ar = Array(Now, A + 1, .Range("I2"), .Range("J2"), ¦¬½L»ù ) '¦³¦¬½L»ù
  25.     End With
  26.     Rng.Areas(R).Cells(C).Resize(1, 4) = Ar
  27.     'Rng.Areas(R).Cells(C).Resize(1, 5) = Ar   '¦³¦¬½L»ù
  28.     Application.OnTime Now + TimeValue("00:10"), "MyDee"  '³]©w 10¤À«á °õ¦æ MyDee µ{§Ç
  29. End Sub
½Æ»s¥N½X

TOP

¥»©«³Ì«á¥Ñ GBKEE ©ó 2011-4-1 16:52 ½s¿è

¦^´_ 5# FAlonso
¼Ó¥D¬O¥Î¬Ý½L³nÅ骺
¸Õ¸Õ¬Ý,¥i¿ï¾ÜªÑ²¼,10¬í¬ö¿ý¤@¦¸.

ªÑ²¼¬ö¿ý.rar (14.88 KB)

TOP

¦^´_ 8# jackson184
¨Ì¹Ï¤ù¦b§Aexcelªº vbaµøµ¡ ´¡¤J¤@¼Ò²Õ
¦^¨ì ½×¾Â  ¦p¹Ï
  «ö¤U ¡u½Æ»s¥N½X¡v«á·|Åã¥Ü [¥N½X¤w½Æ»s¨ì°Å¶Kï] ªº«H®§ ,¦^¨ì vbaµøµ¡¶K¤W§Y¥i





¦^´_ 7# FAlonso
If Time > TimeValue("13:30") Then
Exit Sub
End If
'''''''''''''''''''''''''''''''''''''''''
If Time > TimeValue("13:30") Then  Exit Sub
¦¹¬°Â²¤Æ ³£¬O¥i¹F¨ì¤@¼Ëªº®ÄªG

TOP

¦^´_ 10# FAlonso
Private Sub MyDee()
    Dim Sh As Worksheet, Rng As Range, ¥N¸¹ As String
    Static Run_Time As Date            'Static ³¯­z¦¡«Å§iªºÅܼơA¦bµ{¦¡°õ¦æ´Á¶¡¡A·|¤@ª½«O¯d¤º®e
  ' If Time > TimeValue("13:30") Then Exit Sub     ' ¦¬½L®É¶¡«á °±¤î°õ¦æ
    Set Sh = Sheets("¬ö¿ý")
    ¥N¸¹ = Sheets("¬ö¿ý").[C1]
    Sh.Activate
    With Sheets("¶×¤J").QueryTables(1)
        .Connection = "URL;http://tw.stock.yahoo.com/q/q?s=" & ¥N¸¹
       .Refresh False
        If InStr(.ResultRange.Rows(3).Cells(1), ¥N¸¹) = 0 Then GoTo Refresh_Err:
       Application.EnableEvents = False
        Set Rng = Sh.Range("A" & Rows.Count).End(xlUp).Offset(1).Resize(1, .ResultRange.Columns.Count - 1)
        Rng.Value = .ResultRange.Rows(3).Value
        Application.EnableEvents = True
        Rng.Select
    End With
    Run_Time = Now + TimeValue("00:00:10")
    Application.OnTime Run_Time, "MyDee"  '³]©w 10¬í«á °õ¦æ MyDee µ{§Ç
    Exit Sub
Refresh_Err:
    On Error Resume Next
    Application.OnTime Run_Time, "MyDee", , False  '²M°£¥ý«e³]©wªºµ{§Ç
    MsgBox "§ä¤£¨ì " & Sheets("¬ö¿ý").[C1] & " ªÑ²¼"
End Sub

TOP

1 ¦b³oºô­¶¬d¸ßªÑ²¼ªº¥N¸¹,InStr(.ResultRange.Rows(3).Cells(1), ¥N¸¹), ¬°¤ñ¹ï ¶×¤Jªº¸ê®Æ¬O§_¥]§tªÑ²¼ªº¥N¸¹  ·í¦¹¨ç¼Æ¬°0 ®Éªí¥Ü¨S¦³³o­ÓªÑ²¼¥N¸¹
2 ¤£¥Îstatic,´N¬O·|¥X²{°ÝÃD...
  ¤£¥Îstatic,¥i¦b¼Ò²Õ³Ì¤W¤è Dim Run_Time As Date  ³]¬° ¼Ò²Õªº¨p¥ÎÅܼÆ.

TOP

        ÀR«ä¦Û¦b : ¦h°µ¦h±o¡C¤Ö°µ¦h¥¢¡C
ªð¦^¦Cªí ¤W¤@¥DÃD