工作表更改方法的问题;无法改变

时间:2012-01-02 17:41:30

标签: excel vba

我正在尝试在我的工作表中使用以下代码。目前它什么也没做。

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address(False, False) = "j4" Then
    Application.EnableEvents = False
    If Target.Value = 0 Then
        Range("j5").Value = 1
    Else
        Range("j5").Value = 2
    End If
    Application.EnableEvents = True
End If
End Sub

代码放在工作表中,宏安全性设置为“启用所有宏”。

我正在使用64位版本的excel 2010.

感谢您提供的任何帮助。 詹姆斯

1 个答案:

答案 0 :(得分:2)

问题是您的第一个If声明。以下代码适合您:

Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("J4")) Is Nothing Then
        Application.EnableEvents = False
        If (Target = 0) Then
            Range("J5") = 1
        Else
            Range("J5") = 2
        End If
        Application.EnableEvents = True
    End If
End Sub