我试图Worksheet_Change
在一张纸上有多个,但是我在实施它们时遇到了问题。
我试过了:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$B$6" Then
Select Case Target.Value
Case "Yes"
Range("DataYes").EntireRow.Hidden = True
Range("DataNo").EntireRow.Hidden = False
Case "No"
Range("DataYes").EntireRow.Hidden = False
Range("DataNo").EntireRow.Hidden = True
Case ""
Range("DataYes").EntireRow.Hidden = True
Range("DataNo").EntireRow.Hidden = True
End Select
End If
If Target.Address = "$Q$6" Then
Select Case Target.Value
Case "TRUE"
Range("DataNo").EntireRow.Hidden = False
Range("CrComments").EntireRow.Hidden = False
Case "FALSE"
Range("CrComments").EntireRow.Hidden = True
End Select
End If
End Sub
在这种情况下,只有第一段代码有效。第二个没有。没有错误信息。
我也试过:
Private Sub Worksheet_Change(ByVal Target As Range)
Select Case Target.Address
Case "$B$6"
If Range("B6").Value = "Yes" Then
Range("DataYes").EntireRow.Hidden = True
Range("DataNo").EntireRow.Hidden = False
ElseIf Range("B6").Value = "No" Then
Range("DataYes").EntireRow.Hidden = False
Range("DataNo").EntireRow.Hidden = True
ElseIf Range("B6").Value = "" Then
Range("DataYes").EntireRow.Hidden = True
Range("DataNo").EntireRow.Hidden = True
End If
End If
Case "$Q$6"
If Range("Q6").Value = "TRUE" Then
Range("CrComments").EntireRow.Hidden = False
ElseIf Range("Q6").Value = "FALSE" Then
Range("CrComments").EntireRow.Hidden = True
End If
End If
End Select
End Sub
在此代码中,我在第一种情况下End if without block if
的最后一个错误End If
。
删除错误的 End IF 仍然不能使第二段代码工作