簡體   English   中英

通過單擊上方的單元格來隱藏和取消隱藏行(循環)

[英]Hide and unhide rows by clicking on a cell above (loop)

我是 excel VBA 的新手,我正在嘗試一些代碼以使用互聯網自行學習。

我想通過單擊隱藏單元格正上方的單元格來隱藏/取消隱藏行。 讓我們說:

Cell D6 - Project title 1
Cell D7 - First row of Project1 contents
.
.
.
.
Cell D26 - Last row of Project1 contents
Cell D27 - Project title 2
Cell D28 - First row of Project2 contents
.
.
.
.
Cell D47 - Last row of Project2 contents

我希望能夠通過單擊單元格 D6 來隱藏/取消隱藏第 7 到 26 行。 然后單擊 D27 隱藏/取消隱藏第 28 到 47 行。我在同一張紙上有 50 個項目標題和內容。

我嘗試使用工作表選擇更改,但我的代碼不起作用。 誰能告訴我怎么做?

謝謝 !

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

Dim A As Range
Dim B As Range

B = A.Rows + 1 & ":" & A.Rows + 20

If A = Target.Address Then

    Rows(B).EntireRow.Hidden = Not Rows(B).EntireRow.Hidden

End If

Application.ScreenUpdating = True
End Sub

您需要稍微改進一下,但這一條線將完成大部分工作。

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

Target.Offset(1).Resize(20).EntireRow.Hidden = Not Target.Offset(1).Resize(20).EntireRow.Hidden

End Sub

暫無
暫無

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

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