2017-03-07 269 views
0

有人能告訴我這段代碼有什麼問題嗎?我想通過從下拉列表(從單元格D6)中選擇單元格值來隱藏一組行。是一個簡單的技巧,但我不能使它工作(此代碼正在目標工作表中運行)。Target.Address功能不起作用

Private Sub change_View(ByVal Target As Excel.Range) 

    If Target.Address = "$D$6" Then 
    If Target.Value = "Supervisor" Then Rows(14).Hidden = False 
    If Target.Value = "Worker" Then Rows(14).Hidden = True 
    End If 

End Sub 

回答

1

我不熟悉change_View事件,通常這些類型的東西都與相關表內Worksheet_Change事件實現。

我用Select Case替換了您的2 x If s,在「情況下」您將需要在未來添加更多場景。

Private Sub Worksheet_Change(ByVal Target As Range) 

If Not Intersect(Range("D6"), Target) Is Nothing Then 
    Select Case Target.Value 
     Case "Supervisor", "Worker" 
      Rows(14).Hidden = True  
    End Select 
End If 

End Sub 
+0

謝謝曬!完美曾任職 –

0

我有這個代碼,第一個是工作正常,但第二個不:(

If Target.Address = "$M$8" Then 
     Application.ScreenUpdating = False 
       If Sheet1.Range("M8").Value2 = "LTA" Then 
       Sheet1.Range("M6").Value2 = "Life-Class 3" 
       Else 
       End If 
     Application.ScreenUpdating = True 
    End If 

    If Target.Address = "$M$6" Then 
     Application.ScreenUpdating = False 
       If Sheet1.Range("M6").Value2 = "Life-Class 2" Then 
       Sheet1.Range("M8").Value2 = "DTA" 
       Else 
       End If 
     Application.ScreenUpdating = True 
    End If 

沒有任何理由爲