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值单元格,但不是必需的)。
由于
答案 0 :(得分:0)
答案 1 :(得分:0)
您似乎以不同的方式进行了两个论点,因为您将<> Empty
和=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