我試圖在一張表中有多個Worksheet_Change
,但是我遇到了實施它們的問題。多個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
。
刪除出錯結束的IF仍然沒有使代碼工作的第二件
謝謝,我沒有收到任何錯誤,但'Q6'部分仍然不起作用。 'Q6'部分是根據複選框選擇更改爲「TRUE」或「FALSE」的單元格。如果這是真的,則應該放棄一行。 'B6'部分起作用,'Q6'不起作用。這裏有更多的代碼。 'Explicit選項 子AssignRownames() 行( 「15:15」)。EntireRow.Name = 「DataYes」 行( 「16:16」)。EntireRow.Name = 「DataNo」 行(「8 :8「)EntireRow.Name =」CrComments「 End Sub' – pufAmuf
您是否嘗試過使用」True「和」False「? – Pragmateek
是的,我甚至在沒有引號的情況下嘗試過'True''False'。 – pufAmuf