Excel 工作表更改事件,如果单元格内容已清除,则清除其旁边的单元格
守则的第一部分起作用;当用户将单元格更改为ACC时,它会输入正确的值。但是,如果用户删除它,那么我希望注释和它旁边单元格的内容也被清除。现在,当我删除它时,它不会改变任何东西。我尝试了Excel 工作表更改事件,如果单元格内容已清除,则清除其旁边的单元格,excel,vba,Excel,Vba,守则的第一部分起作用;当用户将单元格更改为ACC时,它会输入正确的值。但是,如果用户删除它,那么我希望注释和它旁边单元格的内容也被清除。现在,当我删除它时,它不会改变任何东西。我尝试了Target.Value=”“,但它也不起作用 Sub worksheet_change(ByVal Target As Range) Dim WatchRange As Range Dim IntersectRange As Range Dim lastrow As Long
Target.Value=”“
,但它也不起作用
Sub worksheet_change(ByVal Target As Range)
Dim WatchRange As Range
Dim IntersectRange As Range
Dim lastrow As Long
'If the cell in row J changes either ACC
lastrow = Range("A" & Rows.Count).End(xlUp).Row
Set WatchRange = Range("J9:J" & lastrow)
Set IntersectRange = Intersect(Target, WatchRange)
If Target.Count <> 1 Then Exit Sub 'makes sure only one cell is selected
If Not (IntersectRange Is Nothing) And (Target = "ACC") Then 'if changed to ACC
Application.EnableEvents = False
'Then input what the Poste Recherché was, date time and user
Cells(Target.Row, 11).ClearComments
Cells(Target.Row, 11).AddComment Application.UserName & vbNewLine & Now & _
vbNewLine & "Quart: " & Range("$F$3") & vbNewLine & "Date: " & Range("$F$4")
Cells(Target.Row, 11).Value = "ACCEPTÉ: " & Range("$F$2")
Application.EnableEvents = True
End If
If Not IntersectRange Is Nothing And Target Is Empty Then
Application.EnableEvents = False
Cells(Target.Row, 11).ClearComments
Cells(Target.Row, 11).ClearContents
Application.EnableEvents = True
End If
End Sub
子工作表\u更改(ByVal目标作为范围)
将手表量程变暗为量程
将范围变暗为范围
最后一排一样长
'如果第J行中的单元格发生变化
lastrow=范围(“A”和Rows.Count).End(xlUp).Row
设置WatchRange=Range(“J9:J”和lastrow)
设置IntersectRange=Intersect(目标,监视范围)
如果目标为.Count 1,则退出Sub'确保只选择了一个单元格
如果不是(IntersectRange为Nothing)和(Target=“ACC”),则“如果更改为ACC
Application.EnableEvents=False
'然后输入Poste Recherché是什么,日期时间和用户
单元格(Target.Row,11)。ClearComments
单元格(Target.Row,11).AddComment Application.UserName&vbNewLine&Now&_
vbNewLine和“Quart:”&Range($F$3”)&vbNewLine和“Date:”&Range($F$4))
单元格(Target.Row,11).Value=“接受范围($F$2”)
Application.EnableEvents=True
如果结束
如果不相交范围为空且目标为空,则
Application.EnableEvents=False
单元格(Target.Row,11)。ClearComments
单元格(Target.Row,11).ClearContents
Application.EnableEvents=True
如果结束
端接头
更换:
Target Is Empty
与:
或者
IsEmpty(Target.Value)
。由于您正在使用工作表\u Change,并且我可以看到一些错误,我建议您仔细检查
Target = ""