VBA Видалення дублікатів | Як видалити повторювані значення в Excel VBA?

RemoveDuplicates у VBA Excel

Повторювані значення часто не потрібні в Excel, особливо коли ви хочете мати унікальний підрахунок значень. Зазвичай ми маємо різний набір даних, з якими ми працюємо, і ми бачимо в них купу повторюваних значень.

Сподіваюся, ви знайомі з видаленням дублікатів у робочому аркуші Excel, якщо нічого не турбувати, ми покажемо вам простий приклад для вас. У VBA також ми можемо виконати метод видалення дублікатів.

Отже, він видалив усі повторювані значення заголовка “Регіон”. Подібним чином ми можемо виконати це завдання за допомогою коду VBA.

Як видалити повторювані значення у кодуванні VBA?

Для того, щоб спочатку видалити повторювані значення, нам слід згадати діапазон, на який ми маємо на увазі, тоді ми можемо отримати доступ до методу «Видалити дублікати». Тож синтаксис буде таким.

[Стовпець]: Який стовпець виділення нам потрібно видалити дублікати? Слід зазначити номер стовпця вибраного діапазону.

[Заголовок]: вибраний вами діапазон має заголовки чи ні. У нас є три варіанти роботи тут.

  • xlТак: Якщо дані мають заголовки, ви можете вибрати це.
  • xlНі: якщо дані не мають заголовків, ви можете вибрати це.
  • xlGuess: Цей параметр дозволить Excel відгадувати заголовки даних.

Отже, використовуючи ці параметри, ми можемо видалити дублікати одним натисканням кнопки, не порушуючи наш піт.

У розділі нижче я покажу вам деякі приклади видалення дублікатів VBA. Уважно дотримуйтесь інструкцій, щоб написати код самостійно.

Приклади видалення повторюваних значень у кодуванні VBA

Нижче наведено приклади видалення дубліката у значеннях VBA.

Видалення дублікатів VBA - Приклад 1

Розглянемо також дані нижче для цього прикладу.

З наведених даних нам потрібно видалити дублікати стовпців "Регіон", тому виконайте наведені нижче дії, щоб написати код.

Крок 1: Запустіть підпроцедуру, вказавши ім'я коду макросу.

Крок 2: Згадайте діапазон даних, використовуючи об’єкт VBA Range .

Код:

Додано Remove_Duplicates_Example1 () Діапазон ("A1: C9"). Кінець Sub

Крок 3: Згадавши метод доступу до діапазону VBA “ RemoveDuplicates ”.

Код:

 Підвидалення Remove_Duplicates_Example1 () Діапазон ("A1: C9"). RemoveDuplicates End Sub 

Крок 4: Перший аргумент, у якому стовпці нам потрібно видалити повторювані значення. У цьому прикладі з першого стовпця нам потрібно видалити дублікати.

Код:

 Підпункт Remove_Duplicates_Example1 () Діапазон ("A1: C9"). RemoveDuplicates Стовпці: = 1, Кінець Sub 

Крок 5: Наступне - це те, чи мають дані заголовки чи ні. У цьому випадку у нас є заголовки, тому виберіть “xlYes”.

Код:

 Вкладене Remove_Duplicates_Example1 () Діапазон ("A1: C9"). RemoveDuplicates Стовпці: = 1, Заголовок: = xlТак Кінець Sub 

Запустіть цей код, і VBA видалить дублікати з вибраного регіону.

Це явний спосіб посилання на діапазон комірок. Якщо ви хочете вибрати діапазон самостійно, а потім видалити дублікати, тоді нам потрібно використовувати змінну для роботи. У наведеному нижче прикладі я покажу вам, як використовувати змінні у VBA.

Видалення дублікатів VBA - Приклад №2

У наведеному вище прикладі ми спеціально надали асортимент клітин. Зараз ми побачимо, як працювати з виділенням власних комірок.

Наприклад, у мене є кілька наборів даних, як показано на малюнку нижче.

Кожного разу, коли я не можу явно вказати діапазон комірок, тому ми призначимо виділення як діапазон.

Крок 1: Оголосіть змінну як Діапазон .

Код:

 Sub Remove_Duplicates_Example2 () Dim Rng As Range End Sub 

Крок 2: Діапазон - це об’єкт, для якого ми встановимо діапазон .

Код:

 Sub Remove_Duplicates_Example2 () Dim Rng As Range Set Rng = Selection End Sub 

Крок 3: Тепер замість діапазону комірок ми можемо використовувати змінну “ rng ”.

Код:

 Sub Remove_Duplicates_Example2() Dim Rng As Range Set Rng = Selection Rng.RemoveDuplicates Columns:=1, Header:=xlYes End Sub 

Before we run the code we need to select the range of cells first then we can remove duplicates from the selected range of cells.

VBA Remove Duplicates from Multiple Columns – Example #3

We can also use VBA to remove duplicate values from excel columns as well. In order to remove multiple columns, we need to use Array and mention the column numbers.

For example, look at the example data image.

We have duplicated values in the first column and fourth column. So we will remove from these columns. Use the below code to VBA to remove duplicates.

Code:

 Sub Remove_Duplicates_Example3() Dim Rng As Range Set Rng = Range("A1:D9") Rng.RemoveDuplicates Columns:=Array(1, 4), Header:=xlYes End Sub 

You can download this VBA Remove Duplicates Excel here. VBA Remove Duplicates Excel Template