我有一个包含两列的工作表:日期和名稱.我想删除所有重複的行,只保留唯一的值。
這是我的代碼(不起作用):
Sub DeleteRows()
Dim rng As Range
Dim counter As Long, numRows As Long
With ActiveSheet
Set rng = ActiveSheet.Range("A1:B" & LastRowB)
End With
numRows = rng.Rows.Count
For counter = numRows To 1 Step -1
If rng.Cells(counter) Like rng.Cells(counter) - 1 Then
rng.Cells(counter).EntireRow.Delete
End If
Next
End Sub
似乎是"類似rng.Cells(counter)-1"的原因-我收到"型別不匹配"。
最新回復
- 1月前1 #
- 1月前2 #
可以使用簡單的for迴圈删除任何列中的重複值。
Sub remove() Dim a As Long For a = Cells(Rows.Count, 1).End(xlUp).Row To 1 Step -1 If WorksheetFunction.CountIf(Range("A1:A" & a), Cells(a, 1)) > 1 Then Rows(a).Delete Next End Sub
相似問題
- excel vba:如何在VBA中連線字元串?excelvbavbaexcel2021-01-11 22:58
- 使用FileDialog打開工作簿並在Excel VBA中进行操作excelvbaexcelvbaopenfiledialog2021-01-10 21:25
- Vba Excel从關闭的檔案執行vlookupexcelvbaexcelvbaexcelformulavlookup2021-01-07 06:56
- Excel VBA"物件'IwebBrowser2'的方法'文件'失败"excelvbaexcelvbawebscraping2021-01-07 08:54
- Excel VBA删除行excelvbaexcelvba2021-01-07 09:52
- 使用萬用字元打開Excel工作簿excelexcelvbawildcardvba2021-01-07 15:25
有一个
RemoveDuplicates
您可以使用的方法: