提问人:user19600963 提问时间:11/7/2023 最后编辑:user19600963 更新时间:11/8/2023 访问量:31
行在 之后被隐藏。尽管使用 EntireRow.Hidden=False 但仍从表中删除 RemoveDuplicates
Rows getting hidden after .RemoveDuplicates from a table despite using EntireRow.Hidden=False
问:
我想使用 VBA 从表(“Daten”)中删除重复项。
使用下面的代码时,整个表格之后都会被隐藏。
Sub RemoveDuplicates()
Dim rng As Range
Set rng = ThisWorkbook.Sheets("1. Einfügen aller Touren").ListObjects("Daten").DataBodyRange
rng.RemoveDuplicates Columns:=6, Header:=xlYes
Worksheets("1. Einfügen aller Touren").Rows.EntireRow.Hidden = False
End Sub
即使在使用 .Rows.EntireRow.Hidden = False 它仍然隐藏
用
Worksheets("1. Einfügen aller Touren").Rows.EntireRow.Hidden = False
但是,在另一个模块中取消隐藏行。
答:
1赞
Armaan Farshori
11/7/2023
#1
您面临的问题似乎是,当您使用VBA从“Daten”表中删除重复项时,整个表都会被隐藏,并且您希望在删除重复项后取消隐藏行。您遇到的问题可能与 Excel 处理表中行的可见性的方式有关。
您可以尝试以下VBA代码来删除重复项并取消隐藏表中的行:
Sub RemoveDuplicatesAndUnhide()
Dim ws As Worksheet
Dim tbl As ListObject
Dim rng As Range
' Set the worksheet and table references
Set ws = ThisWorkbook.Sheets("1. Einfügen aller Touren")
Set tbl = ws.ListObjects("Daten")
' Set the range within the table's data body
Set rng = tbl.DataBodyRange
' Remove duplicates
rng.RemoveDuplicates Columns:=6, Header:=xlYes
' Unhide all rows within the table
tbl.DataBodyRange.Rows.Hidden = False
End Sub
评论