VBA Премахване на дубликати | Как да премахна дублиращи се стойности в Excel VBA?

RemoveDuplicates във VBA Excel

Дублиращите се стойности често не се изискват в Excel, особено когато искате да имате уникални стойности. Обикновено имаме различен набор от данни, с които да работим и виждаме куп дублиращи се стойности в него.

Надявам се, че сте запознати с премахването на дубликати в работния лист на Excel, ако не и нищо притеснително, ще ви покажем един прост пример за вас. Във VBA също можем да извършим метод за премахване на дубликати.

И така, премахна всички дублиращи се стойности на заглавието „Регион“. По същия начин можем да изпълним тази задача с помощта на VBA код.

Как да премахна дублиращи се стойности в VBA кодирането?

За да премахнем първо дублиращи се стойности, трябва да споменем диапазона, към който се отнасяме, след което можем да осъществим достъп до метода „Премахване на дубликати“. Така че синтаксисът ще бъде както следва.

[Колона]: Коя колона от селекцията трябва да премахнем дубликати? Трябва да споменем номера на колоната на избрания диапазон.

[Header]: Избраният от вас диапазон има заглавки или не. Тук имаме три възможности за работа.

  • xlДа: Ако данните имат заглавки, можете да изберете това.
  • xlNo: Ако данните нямат заглавки, можете да изберете това.
  • xlGuess: Тази опция ще позволи на Excel да отгатне заглавията на данните.

Така че, използвайки тези параметри, можем да премахнем дубликати само с едно щракване на бутон, без да нарушаваме потта си.

В раздела по-долу ще ви покажа някои от примерите за премахване на дубликати на VBA. Следвайте внимателно стъпките, за да напишете кода сами.

Примери за премахване на дублиращи се стойности в кодирането на VBA

По-долу са примерите за премахване на дубликат в стойности VBA.

VBA Removeduplicates - Пример # 1

Обмислете и данните по-долу за този пример.

От горните данни трябва да премахнем дубликати на колона „Регион“, така че следвайте стъпките по-долу, за да напишете кода.

Стъпка 1: Стартирайте подпроцедурата, като дадете име на макрокода.

Стъпка 2: Споменете диапазона от данни, като използвате обекта VBA Range .

Код:

Sub Remove_Duplicates_Example1 () Диапазон ("A1: C9"). Крайна под

Стъпка 3: След споменаване на метода за премахване на дублирания на VBA за обхвата .

Код:

 Sub Remove_Duplicates_Example1 () Диапазон ("A1: C9"). RemoveDuplicates End Sub 

Стъпка 4: Първи аргумент, в коя колона трябва да премахнем дублиращите се стойности. В този пример от първата колона трябва да премахнем дубликатите.

Код:

 Sub Remove_Duplicates_Example1 () Диапазон ("A1: C9"). RemoveDuplicates Columns: = 1, End Sub 

Стъпка 5: Следващото нещо е дали данните имат заглавки или не. В този случай имаме заглавки, така че изберете „xlYes“.

Код:

 Sub Remove_Duplicates_Example1 () Диапазон ("A1: C9"). RemoveDuplicates Колони: = 1, Header: = xl Да Край Sub 

Изпълнете този код, той ще премахне дублирания от избрания регион.

Това е изричен начин за препращане към диапазона от клетки. Ако искате сами да изберете диапазона и след това да премахнете дубликати, тогава трябва да използваме променливата, за да работим. В примера по-долу ще ви покажа как да използвате променливи във VBA.

VBA Removeduplicates - Пример # 2

В горния пример ние специално предоставихме гамата от клетки. Сега ще видим как да работим с избора на собствени клетки.

Например имам няколко набора от данни, както е показано на изображението по-долу.

Всеки път, когато не мога да посоча изрично обхвата на клетките, така че ще присвоим избора като обхват.

Стъпка 1: Декларирайте променливата като Range .

Код:

 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