Vba: как удалить повторяющиеся значения
Для удаления повторяющихся значений в VBA можно использовать следующие методы:
Способ 1. Удаление повторяющихся значений на основе столбца
Sub RemoveDuplicates()
Range(" A1:C11 ").RemoveDuplicates Columns:=1, Header:=xlYes
End Sub
В этом конкретном примере удаляются повторяющиеся строки в диапазоне A1:C11 на основе повторяющихся значений в первом столбце диапазона.
Аргумент Header:=xl Yes указывает, что первая строка в диапазоне является строкой заголовка и не должна учитываться при проверке дубликатов.
Способ 2. Удаление повторяющихся значений на основе нескольких столбцов
Sub RemoveDuplicates()
Range(" A1:C11 ").RemoveDuplicates Columns:=Array(1, 2), Header:=xlYes
End Sub
В этом конкретном примере удаляются повторяющиеся строки в диапазоне A1:C11 на основе повторяющихся значений в первых двух столбцах диапазона.
В следующих примерах показано, как использовать каждый из этих методов на практике со следующим набором данных в Excel:
Пример 1. Удаление повторяющихся значений на основе столбца
Мы можем создать следующий макрос для удаления строк с повторяющимися значениями в первом столбце:
Sub RemoveDuplicates()
Range(" A1:C11 ").RemoveDuplicates Columns:=1, Header:=xlYes
End Sub
Когда мы запускаем этот макрос, мы получаем следующий вывод:
Обратите внимание, что каждая строка с повторяющимся значением в первом столбце набора данных была удалена.
Пример 2. Удаление повторяющихся значений на основе нескольких столбцов
Мы можем создать следующий макрос для удаления строк с повторяющимися значениями в первых двух столбцах:
Sub RemoveDuplicates()
Range(" A1:C11 ").RemoveDuplicates Columns:=Array(1, 2), Header:=xlYes
End Sub
Когда мы запускаем этот макрос, мы получаем следующий вывод:
Обратите внимание, что каждая строка, содержащая повторяющиеся значения в первых двух столбцах набора данных, была удалена.
Примечание . Полную документацию по методу VBA RemoveDuulates можно найти здесь .
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные задачи в VBA:
VBA: Как добавить значения в диапазон
VBA: Как рассчитать среднее значение диапазона
VBA: Как подсчитать уникальные значения в диапазоне