- ©«¤l
- 2035
- ¥DÃD
- 24
- ºëµØ
- 0
- ¿n¤À
- 2031
- ÂI¦W
- 0
- §@·~¨t²Î
- Win7
- ³nÅ骩¥»
- Office2010
- ¾\ŪÅv
- 100
- ©Ê§O
- ¨k
- µù¥U®É¶¡
- 2012-3-22
- ³Ì«áµn¿ý
- 2024-2-1
|
¦^´_ 10# GBKEE
lieh_chun ¥Lnªº¬O½L¤¤ªº Open/High/Low/Close ¦Ó¤£¬O Max¡BMin¡C
¦^´_ 9# lieh_chun
¦]§AµLÅv¤U¸ü¡A©Ò¥H¥u¦n±Nµ{¦¡¶K¤W¡A§A±N¥¦¥þ³¡Âл\¨ì§Aªº ThisWorkbook µ{¦¡°Ï¤ºÀx¦s¡A¦A«±Ò´N OK ¤F¡I- Option Explicit
- Dim Ov As Single, Hv As Single, Lv As Single, Cv As Single, cIndex As Single
- Dim timerEnabled As Boolean ' §P©w¶}±Ò¥»¤u§@ªí³æªº®É¬q¬O§_¬°¶}½L«e±Ò°Ê¡C
- Public turnKey As Integer
- Private Sub Workbook_Open()
- timerEnabled = False
- Call timerStart ' µ{¦¡¤@±Ò©l¡A«K¥h¦Û°Ê°õ¦æ timerStart
- End Sub
- Private Sub Workbook_BeforeClose(Cancel As Boolean)
- On Error Resume Next
- Application.OnTime Now + TimeValue("00:00:01"), "ThisWorkbook.ATimer", , False
-
- Me.Save
- End Sub
- Public Sub ATimer()
- Dim Pos As Long ' ±N¨C¹j "¦h¤Ö®É¶¡" ³B²z®É¬q¡A²¾¨ì¦¹³B¨Ó³B²z¡C
-
- On Error Resume Next
- If (TimeValue(Now) > TimeValue("13:45:00")) Then Exit Sub
-
- If (TimeValue(Now) >= TimeValue("08:45:00")) Then ' ¶}½L¡B¦¬½L®É¬q³]©w
- ' ½L¤¤³B²z¡A±N¸ê®Æ¶×¤J¼g¤J¤u§@ªí³æ¤ºÀx¦s¡C
- With Sheets("µ¦²¤°O¿ý")
- Pos = .Range("B" & Rows.Count).End(xlUp).Row ' ¨D¥X¸ÓÄ椧³Ì«á¨Ï¥Î¦C¼Æ ' ¥Ø«e¬° 329
- If (Pos < 2) Then Pos = 12
- Pos = Pos + 1 ' ±NÅܰʦ渹¥[¤@¦æ
- If Not IsError(.[B2]) Then
- .[T1] = "¶}½L»ù"
- .[U1] = "³Ì°ª»ù"
- .[V1] = "³Ì§C»ù"
- .[W1] = "¦¨¥æ»ù"
- .[T2] = Ov ' ¶}½L»ù
- .[U2] = Hv ' ³Ì°ª»ù
- .[V2] = Lv ' ³Ì§C»ù
- .[W2] = Cv ' ¦¨¥æ»ù
-
- .Cells(Pos, 1) = Time ' ®É¶¡
- ' ¦hªÅ¤O¹D¡B¤Ï¦V¶Õ¤O¡B¥D¤O±±½L¡B¤º¥~½L¤ñ%¡B¦¨¥æ»ù¡Bº¦¶^¡B
- ' Á`¶q¡B³Ì°ª¡B³Ì§C¡B¥[Åv«ü¼Æ¡Bº¦¶^¡B²Öp©e¶R¡B²Ö©e¶Rµ§¡B
- ' ²Öp©e½æ¡B²Ö©e½æµ§¡B°ò®t¡B©e¤ñ¡B©e¶R½æ®t¡B
- ' ¶}½L»ù¡B³Ì°ª»ù¡B³Ì§C»ù¡B¦¬½L»ù
- .Cells(Pos, 2).Offset(0).Resize(, 22) = .[B2:W2].Value
- End If
- End With
- End If
- End Sub
- Sub timerStart()
- turnKey = 0
- Sheets("µ¦²¤°O¿ý").Range("B6").Value = 0
-
- If timerEnabled Then
- ' ²Ä¤G¦¸(§t)¥H«á§¡¥H³]©w¤§ "¶¡¹j®É¬q" ¨Ó³B²z°õ¦æ§Çªº§@·~¡C
- Application.OnTime (Now + TimeValue("00:00:01")), "ThisWorkbook.ExeSelf"
- Else
- timerEnabled = True
-
- ' ±N²Ä¤@¦¸±Ò°Ê®É¶¡§ó§ï¬°³]©w "¶}½L®É¶¡"«e¡A¦pªG¶}±Ò Excel ®É¡A¤w¸g¹L¤F³]©w "¶}½L®É¶¡"¡A«h¤@¶i¤J¨t²Î§Yª½±µ¥h°õ¦æ¬ö¿ý§@·~¡C
- If (TimeValue(Now) <= TimeValue("08:45:00")) Then
- Application.OnTime (TimeValue("08:45:00")), "ThisWorkbook.ExeSelf"
- Else
- ' ¨t²Îè³s¤W DDE ¦Ü¸ê®Æ¶×¤JExcel¤u§@ªí³æ¡A¶·¦³¤@Ó½w½Ä®É¬q¡A
- ' ³o®É¦pªG°¨¤W¥h§ì¨úDDE¸ê®Æ¡A·|¦³«¬ºA¤£²Åªº¿ù»~°T®§²£¥Í¡A¨Ã¤¤Â_°õ¦æ§Çªº§@·~¡C
- Application.OnTime (Now + TimeValue("00:00:05")), "ThisWorkbook.ExeSelf"
- End If
- End If
- End Sub
- Private Sub ExeSelf()
- Dim nums As Integer ' ¹w³]¬° 60 ¬í
-
- nums = 60
- On Error Resume Next
- If (TimeValue(Now) < TimeValue("08:45:00") Or TimeValue(Now) > TimeValue("13:46:01")) Then Exit Sub
-
- If IsError(Sheets("µ¦²¤°O¿ý").Range("F2").Value) Then
- Cv = 0
- Else
- Cv = Sheets("µ¦²¤°O¿ý").Range("F2").Value ' ¦¨¥æ»ù
- End If
-
- If (turnKey = 0 Or Ov = 0) Then
- Ov = Cv ' ¶}½L»ù
- Hv = Cv ' ³Ì°ª»ù
- Lv = Cv ' ³Ì§C»ù
- End If
-
- turnKey = turnKey + 1
-
- If (Cv > Hv) Then Hv = Cv ' ³Ì°ª»ù
- If (Cv < Lv) Then Lv = Cv ' ³Ì§C»ù
-
- Sheets("µ¦²¤°O¿ý").Range("B6").Value = " ( " & turnKey & " ¬í )"
-
- If (turnKey < nums) Then
- Application.OnTime (Now + TimeValue("00:00:01")), "ThisWorkbook.ExeSelf"
- Else
- If (Cv > 0) Then Call ATimer
- If timerEnabled Then Call timerStart
- End If
- End Sub
½Æ»s¥N½X
DDE for lieh_chun.rar (62.46 KB)
|
|