Private Sub Worksheet_Change(ByVal Target As Range)
Dim c As Range
For Each c In Target.Cells
**If c.Value <> Empty Or c.Value = 0 Then
End If**
If c.Column = 11 Then
c.Offset(0, -1).Value = Now()
End If
Next c
End Sub
我上面的代码工作很好,除了我试图添加粗体代码忽略任何空白单元格(也可能是忽略0值单元格的选项,但不是必要的)。
谢谢
你似乎有你的两个参数会以不同的方式,在你混为一谈<> Empty
和=0
在同一个测试。
无论如何,这使得改变,如果有什么东西在细胞之外0,并作为奖金,清除更改,如果它是空的或0。
Private Sub Worksheet_Change(ByVal Target As Range)
Dim c As Range
Application.EnableEvents = False
For Each c In Target.Cells
If c.Column = 11 Then
If c.Value = "" Or c.Value = 0 Then
c.Offset(0, -1).ClearContents
Else
c.Offset(0, -1).Value = Now()
End If
End If
Next c
Application.EnableEvents = True
End Sub
If c.Value != ""
应该工作的空白单元格。
至少它的工作在这里 。
至于忽略值0,不能你刚才if子句改变if c.Value > 0
?