[英]use checkbox to hide/unhide rows based on cell value
在 excel 中使用 VBA,试图了解如何使用复选框隐藏/取消隐藏在特定列中具有特定值的任何行。 我的 VBA 技能越来越好,但我仍然不擅长循环。 感谢您提供的任何帮助。 这是我到目前为止所拥有的。
Private Sub CkBx_ShowAllRecords_Click()
If Me.CkBx_ShowAllRecords = True Then
For Each Row In Range("Table1").ListObject.ListColumns
If Row.Cells(1, "column5").Value = "Submission Complete" Then
Application.EntireRow.Visible=True
Next
End if
End Sub
此外,当我取消选中该框时,我希望隐藏第 5 列单元格值等于“提交完成”的所有行(与我选中该框控件时放在上面的内容相反)。
希望这可以帮助你:
Private Sub CkBx_ShowAllRecords_Click()
Dim i As Long
If Me.CkBx_ShowAllRecords = True Then
For i = 1 To ActiveSheet.ListObjects("Table1").Range.Rows.Count
If ActiveSheet.ListObjects("Table1").DataBodyRange(i, 5).Value = "Submission Complete" Then
Rows((i + 1) & ":" & (i + 1)).Select
Selection.EntireRow.Hidden = True
End If
Next i
Else
ActiveSheet.Rows.EntireRow.Hidden = False
End If
Me.Hide
End Sub
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.