Excel:在一行上加上最后修改的日期
Excel: Add the date of the last modification on a row
我正在尝试使用以下 VBA 脚本将最后一次修改行的日期和时间添加到该行的特定列:
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
ThisRow = Target.Row
If Target.Row > 1 Then Range("K" & ThisRow).Value = Now()
End Sub
但它一直抛出以下错误:
Run-time error '-2147417848 (80010108)':
Method 'Value' of object 'Range' failed
谁能解释为什么会这样?
您正在通过更改 Worksheet_Change
事件中的值来创建无限循环,而没有先禁用事件。当我做类似的事情时,我得到了从 Out of stack space
first 到 Method Range failed...
.
的一系列错误
改为这样做:
Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
ThisRow = Target.Row
If Target.Row > 1 Then Range("K" & ThisRow).Value = Now()
Application.EnableEvents = True
End Sub
相关post:MS Excel crashes when vba code runs
我正在尝试使用以下 VBA 脚本将最后一次修改行的日期和时间添加到该行的特定列:
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
ThisRow = Target.Row
If Target.Row > 1 Then Range("K" & ThisRow).Value = Now()
End Sub
但它一直抛出以下错误:
Run-time error '-2147417848 (80010108)':
Method 'Value' of object 'Range' failed
谁能解释为什么会这样?
您正在通过更改 Worksheet_Change
事件中的值来创建无限循环,而没有先禁用事件。当我做类似的事情时,我得到了从 Out of stack space
first 到 Method Range failed...
.
改为这样做:
Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
ThisRow = Target.Row
If Target.Row > 1 Then Range("K" & ThisRow).Value = Now()
Application.EnableEvents = True
End Sub
相关post:MS Excel crashes when vba code runs