亞寵展、全球寵物產業風向標——亞洲寵物展覽會深度解析
784
2025-03-31
利用Excel VBA刪除工作表中的重復行
如果要在Excel中用VBA的方法以根據某列內容刪除重復的行,即當某列有重復數據時僅保留一行,可以用下面的VBA代碼。假如以A列為參考,工作表的第一行為標題行,數據從第二行開始。
方法一:用工作表函數CountIf判斷該行是否重復
Sub 刪除重復行1()Dim i As LongApplication.ScreenUpdating = FalseFor i = Range("A65536").End(xlUp).Row To 3 Step -1If WorksheetFunction.CountIf(Range("A2:A" & i), Cells(i, 1)) > 1 ThenCells(i, 1).EntireRow.deleteEnd IfNextApplication.ScreenUpdating = TrueEnd Sub
方法二:先高級篩選,再刪除隱藏行
Sub 刪除重復行2()Dim rCell As Range, rRng As Range, dRng As RangeOn Error Resume NextApplication.ScreenUpdating = FalseSet rRng = Range("A1:A" & Range("A65536").End(xlUp).Row)rRng.AdvancedFilter Action:=xlFilterInPlace, unique:=TrueFor Each rCell In rRngIf rCell.EntireRow.Hidden = True ThenIf dRng Is Nothing ThenSet dRng = rCell.EntireRowElseSet dRng = Application.Union(dRng, rCell.EntireRow)End IfEnd IfNextIf Not dRng Is Nothing Then dRng.deleteActiveSheet.ShowAllDataApplication.ScreenUpdating = TrueEnd Sub
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。