Excel 股市資料抓取服務

提供Excel 股市資料抓取服務
可透過下列方式聯絡我
Email: iamaraymond@yahoo.com.tw
(FB請先加我好友再私訊,不然會跑到陌生訊息)

課程:
Excel VBA 金融資料抓取 | 打造股票研究系統 (學生數: 602,學員評價5顆星)
無痛起步-Excel VBA超入門實戰(學生數: 413,學員評價5顆星)


2018年5月15日 星期二

如何每隔一段時間自動執行程式?

在麻辣家族中有一則發問:

如何每隔30分鐘讓程式執行複製貼上的動作
將A欄的值複製到C欄,下一次到D欄
一直到執行20次為止

我一開始的想法是用
Application.wait now()+timeValue("00:30:00")
就好
這段語法會讓程式先停住30分鐘後再執行下一步



但此時樓主提出一個要求,希望在程式沒運行可以自由在Excel上操作
我馬上聯想到doevents,但實際用起來還是卡卡的
後來我發現了application.ontime語句,可以達到樓主的要求
也算是多學了一個語法

詳細語法:

Dim total As Integer

Sub test()

If total < 5 Then
    total = total + 1
    Debug.Print total
    Application.OnTime Now() + TimeValue("00:00:10"), "Thisworkbook.test1"
Else
    Application.CutCopyMode = False
    [A1].Select
End If

Application.CutCopyMode = False
[A1].Select
End Sub

Sub test1()
    Range("A3:A22").Copy
    Cells(3, total + 2).PasteSpecial Paste:=xlPasteValues
    Call test
End Sub

1 則留言:

  1. 你好,我想跟你學習excel vba,可以教導我嗎?

    回覆刪除