2015-07-09 5 views
0

Я пытаюсь удалить повторяющиеся строки данных, когда у меня есть определенное значение в столбце A.Ошибка при удалении дубликатов через фильтр в Excel макро

Dim lr As Long 
    lr = Cells(Rows.Count, 1).End(xlUp).Row 

    Dim dRange As Range 
    Set dRange = Range("A2:P" & lr) 
    ActiveSheet.AutoFilterMode = False 


    Dim fRange As Range 
    With dRange 
     .AutoFilter Field:=1, Criteria1:="BEAM LENGTH" 
     Set fRange = .SpecialCells(xlCellTypeVisible) 
     ActiveSheet.AutoFilterMode = False 
    End With 

    Range(fRange).RemoveDuplicates Columns:=Array(1, 3, 7, 8, 9) 

код приносит ошибку в Range(fRange).RemoveDuplicates Columns:=Array(1, 3, 7, 8, 9), что Method 'Range' of object'_Global'failed. Мне любопытно, почему fRange не является приемлемым значением для объекта Range(), так как я предполагаю, что это то, что приносит ошибку.

Любая помощь будет оценена по достоинству.

+1

'fRange', похоже, уже является объектом диапазона ... зачем вам его возвращать в вызов' Range() '? Попробуйте просто использовать 'fRange.Remove ...' – Chrismas007

ответ

1

frange в уже диапазоне. Попробуйте

fRange.RemoveDuplicates Columns:=Array(1, 3, 7, 8, 9) 
+0

Yea .. просто прокомментировал как таковой ... – Chrismas007

+0

Я не люблю отвечать на вопросы в комментариях (хотя это кажется довольно распространенным в SO для таких вопросов) –

+0

Ну, я, конечно, сейчас не чувствую себя самым умным инструментом в сарае. Спасибо за быстрый ответ. – zbrown

Смежные вопросы