- 帖子
- 5923
- 主題
- 13
- 精華
- 1
- 積分
- 5986
- 點名
- 0
- 作業系統
- win10
- 軟體版本
- Office 2010
- 閱讀權限
- 150
- 性別
- 男
- 來自
- 台灣基隆
- 註冊時間
- 2010-5-1
- 最後登錄
- 2022-1-23
        
|
本帖最後由 GBKEE 於 2012-4-27 21:09 編輯
回復 10# cfuxiong
試試看- Option Explicit '在模組層次中強迫每個在模組�堛瘍僂くㄔ眸楨�確的宣告。
- Dim Rng As Range
- Private Sub AUTO_OPEN() '此巨集於檔案開啟時會自動執行
- Sheets("紀錄").UsedRange.Offset(2).Clear '清除 前一日的數據
- '*** Offset(1).Clear 改成 Offset(2).Clear '********
- If Time < TimeValue("08:45") Then '早於開盤時間
- Application.OnTime TimeValue("08:45"), "MyDee" '設定於08:45 執行 MyDee 程序
- ElseIf Time >= TimeValue("08:45") And Time <= TimeValue("13:30") Then '於交易時間內
- MyDee ' 執行 MyDee 程序
- End If
- End Sub
- Private Sub MyDee()
- Dim Sh As Worksheet, 代號 As String
- If Time > TimeValue("13:30") Then Exit Sub ' 收盤時間後 停止執行
- On Error Resume Next
- Set Sh = Sheets("紀錄")
- With Sh
- 代號 = .[C1]
- .[C1].Select
- .Activate
- Application.ScreenUpdating = False
- With Rng
- .Interior.ColorIndex = xlNone
- .Borders.LineStyle = xlLineStyleNone
- End With
- If Err <> 0 Then
- Err.Clear
- On Error GoTo 0
- .UsedRange.Interior.ColorIndex = xlNone
- .UsedRange.Borders.LineStyle = xlLineStyleNone
- End If
- End With
- With Sheets("匯入").QueryTables(1)
- .Connection = "URL;http://tw.stock.yahoo.com/q/q?s=" & 代號
- .Refresh False
- 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
- With Rng
- If .Row >= 20 Then
- ActiveWindow.ScrollRow = .Row - 17
- Else
- ActiveWindow.ScrollRow = 3
- End If
- .Interior.ColorIndex = 4
- .BorderAround xlContinuous, 2, 5
- End With
- Application.EnableEvents = True
- Application.ScreenUpdating = True
- End With
- Application.OnTime Now + TimeValue("00:00:10"), "MyDee" '設定 10秒後 執行 MyDee 程序
-
- '10秒鐘: 輸入此格式 #00:00:10# 後VBA 自動生成 -> #12:00:10 AM#
- '5分鐘: 輸入此格式 #00:05:00# 後VBA 自動生成 -> #12:05:00 AM#
- '1小時: 輸入此格式 #1:00:00# 後VBA 自動生成 -> #1:00:00 AM#
-
- 'Application.OnTime Now + #12:00:10 AM#, "MyDee" '設定 10秒後 執行 MyDee 程序
- 'Application.OnTime Now + #12:05:00 AM#, "MyDee" '設定 5分鐘後 執行 MyDee 程序
- 'Application.OnTime Now + #1:00:00 AM#, "MyDee" '設定 1小時後 執行 MyDee 程序
-
- Exit Sub
- End Sub
複製代碼 |
|