1
我有单元格A1,单元格B1和单元格C1,我需要检查用户或VBA是否在A1中更改了值。蒙山出如果Target.Address A1 statment让人无限循环Excel VBA Target.address worksheet.onchange无限循环
Private Sub Worksheet_Change(ByVal Target As range)
If Target.Address = B1 or Target.Address = C1 Then
If IsEmpty(Cell("B1")) then
Cell("A1").value = "Enter value"
If IsEmpty(Cell("C1")) then
Cell("A1").value = ""
Else
Cell("A1").value = "=C1/B1"
End IF
End IF
End IF
If Target.Address = A1
IF "changed by user typing" Then
Cell("B1").value = ""
Cell("C1").value = ""
Else
End IF
End IF
End Sub
如何确定什么样的目标已被用户不能从VBA改变?
是的,但我需要做的,只有当改变指定单元格使得如果'Target.Address = B1或Target.Address = C1 Then' '如果Target.Address = A1然后' – user3588043
这没有任何意义 - 目标地址不能同时存在。我发布的代码将清除B1:C1,如果用户更改A1或者如果用户更改B1或C1,请遵循原始逻辑。请测试它,然后_告诉我它是否不做你所需要的。 – Rory
范围错误(“B1:C1”)。Value =“” 对象的方法值范围失败 – user3588043