在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单元格值等于“提交完成”的所有行(与我在上面选中框控件时放置的内容正好相反)。
发布于 2020-08-19 16:06:47
希望这能对你有所帮助:
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
https://stackoverflow.com/questions/63488597
复制相似问题