Видалення дублікатів VBA

У Excel є функція, яка використовується для видалення повторюваних значень із вибраних комірок, рядків або таблиці. Що робити, якщо цей процес ми автоматизуємо в VBA? Так, процес видалення дубліката може бути автоматизований у VBA у формі макросу. У процесі вилучення дубліката, після його завершення унікальні значення залишаються у списку чи таблиці. Це може бути зроблено за допомогою функції видалення дублікатів у VBA.

Як використовувати Excel VBA для видалення дублікатів?

Ми дізнаємось, як використовувати копії для видалення VBA з кількома прикладами в excel.

Ви можете завантажити цей VBA Видалити дублікати шаблону Excel тут - VBA Видалити дублікати шаблону Excel

Приклад №1 - Видалення копій VBA

У нас є список номерів, починаючи від 1 до 5 до рядка 20 у колонці А. Як ми бачимо на наведеному нижче скріншоті, всі номери повторюються багато разів.

Тепер наша робота - видалити дублікат зі списку VBA. Для цього перейдіть до вікна VBA, натиснувши клавішу F11.

У цьому прикладі ми побачимо основне використання того, як VBA Remove Duplicates може працювати для чисел. Для цього нам потрібен Модуль.

Крок 1. Відкрийте новий модуль у меню Вставка, який знаходиться на вкладці меню Вставка.

Крок 2: Після відкриття напишіть підкатегорію VBA Remove Duplicate, як показано нижче.

Код:

 Sub VBARemoveDuplicate1 () Кінець Sub 

Крок 3: У процесі видалення дубліката спочатку нам потрібно вибрати дані. Для цього у VBA ми будемо функцією виділення, поки вона не знизиться до вибору повного списку даних, як показано нижче.

Код:

 Sub VBARemoveDuplicate1 () Виділення.Закінчити (xlDown) .Вибрати кінець Sub 

Крок 4: Тепер ми виберемо Діапазон вибраних комірок або стовпців А. Він знизиться, поки ми не отримаємо дані в певному стовпці. Не тільки до 20-го рядка.

Код:

 Sub VBARemoveDuplicate1 () Selection.End (xlDown) .Виберіть діапазон (Selection, Selection.End (xlUp)). Виберіть End Sub 

Крок 5: Тепер виберіть діапазон комірок у відкритому на даний момент аркуші, як показано нижче. Це активує повний стовпець. Ми вибрали стовпець А до кінця.

Код:

 Sub VBARemoveDuplicate1 () Selection.End (xlDown) .Виберіть діапазон (Selection, Selection.End (xlUp)). Виберіть ActiveSheet.Range ("A: A"). Кінець Під 

Крок 6: Тепер скористайтеся функцією RemoveDuplicate тут. Це активує команду для видалення повторюваних значень із послідовності стовпців 1. Якщо є більше стовпців, то число буде додано та розділено комами в дужках як (1, 2, 3, …).

Код:

 Sub VBARemoveDuplicate1 () Selection.End (xlDown) .Виберіть діапазон (Selection, Selection.End (xlUp)). 

Крок 7: Тепер ми скористаємося командою Header, яка перемістить курсор у верхню клітинку аркуша, яка в основному знаходиться в заголовку будь-якої таблиці.

Код:

 Sub VBARemoveDuplicate1 () Selection.End (xlDown) .Вибрати діапазон (Selection, Selection.End (xlUp)). 

Крок 8: Тепер компілюйте дії коду, натиснувши клавішу F8. Після цього натисніть кнопку Відтворити, щоб перейти до коду, як показано нижче.

Як ми бачимо, дублікат номера видаляється з стовпця А і залишається єдиний унікальний підрахунок.

Приклад №2 - Видалення копій VBA

У цьому прикладі ми побачимо, як видалити повторювані значення з більш ніж одного стовпця. Для цього ми розглянемо той самий дублікат списку, який використовується в прикладі-1. Але по-новому ми додали ще 2 стовпчики з тими ж значеннями, як показано нижче.

Це ще один метод з дещо іншим типом структури коду.

Крок 1: Відкрийте новий модуль в VBA і запишіть підкатегорію в VBA Remove Duplicate. Якщо можливо, тоді введіть його порядковий номер, щоб було краще вибрати правильний код для запуску.

Код:

 Sub VBARemoveDuplicate2 () Кінець Sub 

Крок 2: Спочатку виберіть повний аркуш у VBA, як показано нижче.

Код:

 Sub VBARemoveDuplicate2 () Cells.Select End Sub 

Крок 3: Тепер виберіть відкритий в даний час аркуш за допомогою команди ActiveSheet і виберіть стовпці від A до C, як показано нижче.

Код:

 Під VBARemoveDuplicate2 () Cells.Select ActiveSheet.Range ("A: C"). Кінець Під 

Крок 4: Тепер виберіть команду RemoveDuplicates і після цього виберіть масив стовпців від 1 до 3, як показано нижче.

Код:

 Sub VBARemoveDuplicate2 () Cells.Select ActiveSheet.Range ("A: C"). RemoveDuplicates Coltons: = Масив (1, 2, 3), End Sub 

Крок 5: При останньому використанні команду Header, яку потрібно включити в процес видалення дублікатів у вигляді xlYes, як показано нижче.

Код:

 Sub VBARemoveDuplicate2 () Cells.Select ActiveSheet.Range ("A: C"). RemoveDuplicates Column: = масив (1, 2, 3), заголовок: = xlYes End Sub 

Крок 6: Тепер складіть повний код і запустіть. Як ми бачимо нижче, повний аркуш вибирається, але дублікати значень видаляються із стовпців A, B і C, зберігаючи лише унікальний підрахунок.

Приклад №3 - Видалення копій VBA

Це ще один спосіб видалення дубліката, який є найпростішим способом видалення дубліката в VBA. Для цього ми будемо використовувати дані, які ми бачили в прикладі-1, а також показані нижче.

Крок 1: Тепер перейдіть до VBA і знову напишіть підкатегорію Видалити копії VBA. Ми задали послідовність кожного коду, який ми показали, що він має належну доріжку.

Код:

 Sub VBARemoveDuplicate3 () Кінець Sub 

Крок 2: Це досить схожа закономірність, яку ми бачили в прикладі-2, але це ярлик для написання коду для видалення дубліката. Для цього спочатку безпосередньо почніть вибирати діапазон стовпців, як показано нижче. Ми зберегли обмеження до 100- ї клітинки стовпця А, починаючи з 1, а потім крапка (.)

Код:

 Діапазон під VBARemoveDuplicate3 () ("A1: A100"). Кінець Під 

Крок 3: Тепер виберіть команду RemoveDuplicates, як показано нижче.

Код:

 Sub VBARemoveDuplicate3 () Діапазон ("A1: A100"). RemoveDuplicates End Sub 

Крок 4: Тепер виберіть стовпці A, як у команді Стовпці з послідовністю 1. А після цього включіть Заголовок вибраних стовпців, а також, як показано нижче.

Код:

 Sub VBARemoveDuplicate3 () Діапазон ("A1: A100"). Видалити стовпці дублікатів: = 1, заголовок: = xlДа Кінець Sub 

Крок 5: Тепер компілюйте його, натиснувши клавішу F8 і запустіть. Ми побачимо, що наш код видалив повторювані номери з стовпців А, і зберігаються лише унікальні значення.

Плюси VBA Видалити дублікати

  • Це корисно для швидкого видалення дублікатів у будь-якому діапазоні комірок.
  • Це легко здійснити.
  • Під час роботи над величезним набором даних, коли видалити дублікат стає важко вручну, і він повісить файли, а VBA Remove Duplicates працює за секунду, щоб дати нам унікальні значення.

Мінуси видалення копій VBA

  • Не вигідно використовувати VBA Remove Duplicates для дуже малих даних, оскільки це можна легко зробити за допомогою функції Видалення дублікатів, доступної на панелі меню Дані.

Що потрібно пам’ятати

  • Діапазон можна вибрати двома способами. Після вибору ліміту комірок, як показано в прикладі-1 та інших, є вибір повного стовпця до кінця, як показано в прикладі-1.
  • Переконайтеся, що файл збережений у макро-увімкненому Excel, що дозволить нам використовувати написаний код кілька разів, не втрачаючи його.
  • Ви можете зберегти значення функції Header як Так, оскільки воно буде рахувати заголовок, видаляючи також повторювані значення. Якщо немає дубліката значення з ім'ям заголовка ім'я, то збереження його як " Ні" не принесе шкоди.

Рекомендовані статті

Це керівництво щодо видалення копій VBA. Тут ми обговорили, як використовувати Excel VBA для видалення дублікатів разом із практичними прикладами та шаблоном Excel, який можна завантажити. Ви також можете ознайомитися з іншими запропонованими нами статтями -

  1. Робота з VBA Active Cell
  2. Видалення рядка в VBA
  3. Як використовувати Excel VBA Transpose?
  4. Як виправити помилку 1004 за допомогою VBA

Категорія: