Board logo

標題: [發問] 請問如何修正程式碼? [打印本頁]

作者: wells330    時間: 2011-6-16 22:58     標題: 請問如何修正程式碼?

大家好!
以下是我用之前巨集加上錄製,偵錯出現錯誤,請問如何修改?      感謝各位!
[attach]6682[/attach]
黃色指標指向Rng1 = Time

Option Explicit
Sub 方向()
    Dim Rng As Range, Rng1 As Range, i%
    If Time < TimeValue("22:35:00") Then
        Application.OnTime TimeValue("22:35:01"), "方向.EX"
        Exit Sub
    ElseIf Time >= TimeValue("23:59:30") Then Exit Sub
    End If
    Sheets("Sheet1").Select
    Range("A2:C21").Select
    Selection.ClearContents
    Rng1 = Time
    Rng1(1, 2).Resize(1, Rng.Columns.Count) = Rng.Value
    Application.OnTime TimeSerial(Hour(Now), Minute(Now) + 1, 1), "方向.EX"
End Sub
作者: Hsieh    時間: 2011-6-16 23:11

Rng1被宣告為Range物件
當程式還沒賦值給該變數前
Rng1是不存在的,所以無法將值寫入該物件
作者: wells330    時間: 2011-6-17 14:40

感謝超級版主的回覆!
小弟努力爬文找資料,就是無法完成想要達成定時刪除資料的功能,請各位前輩幫忙一下
1.定時刪除Sheet1(A2:C21)資料
2.於09:00:00開始執行程序、13:35:00結束程序
3.於09:01:01執行第一次"方向.EX"、下一次執行"方向.EX"在每分鐘的第一秒

感謝!

模組
Sub 方向()
        If Time < TimeValue("09:00:00") Then
        Application.OnTime TimeValue("09:01:01"), "方向.EX"
        Exit Sub
        ElseIf Time >= TimeValue("13:35:00") Then Exit Sub
        End If
    Sheets("Sheet1").Select
    Range("A2:C21").Select
    Selection.ClearContents
       Application.OnTime TimeSerial(Hour(Now), Minute(Now) + 1, 1), "方向.EX"
End Sub
作者: GBKEE    時間: 2011-6-17 17:17

回復 3# wells330
你是要09:00:00後每隔一分鐘執行一次 Sub 方向() 到 13:35:00停止嗎?
要指明Sub 方向()存放的模組    如 Application.OnTime TimeValue("09:01:01"), "SHEET1.方向"
Sub 方向()
        If Time < TimeValue("09:00:00") Then
        Application.OnTime TimeValue("09:01:01"), "方向.EX"   '可能是這裡錯誤
        Exit Sub
        ElseIf Time >= TimeValue("13:35:00") Then Exit Sub
        End If
    Sheets("Sheet1").Select
    Range("A2:C21").Select
    Selection.ClearContents
       Application.OnTime TimeSerial(Hour(Now), Minute(Now) + 1, 1), "方向.EX"   '可能是這裡錯誤
End Sub
作者: wells330    時間: 2011-6-18 00:32     標題: RE: 請問如何修正程式碼?(已解決)

GBKEE版主你好!
        謝謝你指正,就是你說的地方錯誤。

      感謝!




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)