Я пытаюсь создать расширенный фильтр в VBA и вставить уникальный контент на новый лист. Однако я получаю сообщение об ошибке «переменная не определена». Обратите внимание, что я полностью начинающий пользователь VBA
. Я пытаюсь скопировать значения из листа и вставить его в новый. Однако есть дубликаты, и я попробовал метод расширенного фильтра в VBA. Копия данных должна применяться только в том случае, если 1 или 2 определенного столбца выбора не заполнены.
Sub copyuniqval()
shBudget.Range("A2:c1048576").ClearContents
Dim lngLastRow As Long: lngLastRow = shProject.Range("A1048576").End(xlUp).Row
If shProject.Range("K1048576").End(xlUp).Row = "" And shProject.Range("L1048576").End(xlUp).Row = "" Then
MsgBox "Do Nothing"
Else
shProject.Range("A5:A" & lngLastRow).AdvancedFilter_
Action = xlFilterCopy_
CopyToRange = shBudget.Range("A2")
Unique = True
End Sub
Он должен смотреть на столбцы K и L, если он пуст, msgBox с «Ничего не делать». Если оно не пустое, скопируйте значения в столбце A и вставьте их на новый лист. И вставьте только уникальные значения. Однако, с моим кодом выше, я получаю compile error: Variable not defined