我是一個新手編碼器,最近正在脫離基於Web的編碼,並且與我的腳本有錯誤。我已經可以看出,這是很糟糕的腳本,並想知道我是否可以得到任何幫助。上次修改後跟蹤的基本IF聲明錯誤
該腳本只是假設在該範圍內的任何單元格發生更改後,將等效偏移單元格設置爲當前時間和日期。我相信我的可憐的腳本要麼導致循環或計算錯誤的信息,因爲事件發生後excel崩潰。
任何幫助將不勝感激。
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("E5:E100")) Is Nothing Then
Target.Offset(0, 3) = Now()
Target.Offset(0, -1) = Target.Offset(0, -1).Value + 1
Else
If Intersect(Target, Range("F5:F100")) Is Nothing Then Exit Sub
Target.Offset(0, 2) = Now()
Target.Offset(0, -1) = Target.Offset(0, -1).Value + 1
End If
End Sub
基本上,我的目標是我有兩列,「E5:E100」和「F5:F100」。每當這些列中的任何一個被更新時。我希望通過更新第三列(在這種情況下的列H)來反映它被修改的當前時間和日期。第二個「Target.Offset(0,-1)= Target.Offset(0,-1).Value + 1」是我在任何時候在「迭代跟蹤器」上的嘗試,這個值會改變。迭代進行一次。 –
哦。問題是Offset(0,-1)如果由於F列的更改而被解僱,將寫入E列 - 這聽起來可能不是您想要的? – CLR
你說得對,當我第一次創建腳本時,我相信這是我的一個疏忽。 –