簡體   English   中英

Excel宏查詢:基於單元格值隱藏行

[英]Excel Macro Query: Hiding Rows based on cell value

嗨,我已經嘗試過下面的代碼,但似乎沒有任何人可以幫助我。 當B1的文本為Delete時,我只想隱藏第3行和第4行。 但是我希望在將Delete輸入B1時自動運行。

謝謝

碼

這樣的事情應該工作

Option Explicit 'Very first line to ensure that variables are declared

Private Sub Worksheet_Change(ByVal Target As Range)
    'check if target address is B1
    If Target.Address(RowAbsolute:=False, ColumnAbsolute:=False) = "B1" Then
        ShowHideRows
    End If
End Sub

Public Sub ShowHideRows()
    If Range("B1").Value = "Delete" Then
        Rows("3:4").EntireRow.Hidden = True
        Rows("7:8").EntireRow.Hidden = False
    ElseIf Range("B1").Value = "Open" Then 'use ElseIf if possible like here
        Rows("3:4").EntireRow.Hidden = False
        Rows("7:8").EntireRow.Hidden = True
    End If
End Sub

注意:這是區分大小寫的。 因此,如果您鍵入B1,則delete而不是Delete將不會運行。 要使其不區分大小寫,請使用LCase()例如:

LCase(Range("B1").Value) = "delete" 'string delete must be lower case!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM