RemoveDuplicates trong VBA Excel
Các giá trị trùng lặp thường không được yêu cầu trong excel, đặc biệt khi bạn muốn đếm các giá trị duy nhất. Chúng tôi thường có một tập hợp dữ liệu khác để làm việc và chúng tôi thấy một loạt các giá trị trùng lặp trong đó.
Tôi hy vọng bạn đã quen với việc loại bỏ các bản sao trong trang tính excel, nếu không có gì phải lo lắng. Chúng tôi sẽ chỉ cho bạn một ví dụ đơn giản cho bạn. Trong VBA cũng vậy, chúng ta có thể thực hiện phương pháp loại bỏ các bản sao.
Vì vậy, nó đã loại bỏ tất cả các giá trị trùng lặp của tiêu đề "Khu vực". Tương tự, chúng ta có thể thực hiện tác vụ này với sự trợ giúp của mã VBA.

Làm thế nào để loại bỏ các giá trị trùng lặp trong mã hóa VBA?
Để loại bỏ các giá trị trùng lặp, trước tiên chúng ta cần đề cập đến phạm vi mà chúng ta đang đề cập đến. Sau đó, chúng tôi có thể truy cập vào phương pháp "Xóa bản sao". Vì vậy, cú pháp sẽ như sau.

(Cột): Cột nào của vùng chọn chúng ta cần loại bỏ các bản sao? Chúng ta cần đề cập đến số cột của phạm vi đã chọn.
(Tiêu đề): Phạm vi bạn đã chọn có tiêu đề hoặc không. Chúng tôi có ba tùy chọn để làm việc ở đây.
- xl Có: Nếu dữ liệu có tiêu đề, thì bạn có thể chọn mục này.
- xlNo: Nếu dữ liệu không có tiêu đề, thì bạn có thể chọn mục này.
- xlGuess: Tùy chọn này sẽ cho phép excel đoán tiêu đề của dữ liệu.
Vì vậy, bằng cách sử dụng các thông số này, chúng tôi có thể loại bỏ các bản sao chỉ bằng một cú nhấp chuột mà không phải đổ mồ hôi.
Trong phần dưới đây, tôi sẽ chỉ cho bạn một số ví dụ để VBA loại bỏ các bản sao. Làm theo các bước một cách cẩn thận để viết mã của riêng bạn.
Ví dụ về loại bỏ các giá trị trùng lặp trong mã hóa VBA
Dưới đây là các ví dụ về loại bỏ trùng lặp trong giá trị VBA.
VBA Loại bỏ các bản sao - Ví dụ # 1
Hãy xem xét dữ liệu dưới đây cho ví dụ này.

Từ dữ liệu trên, chúng tôi cần loại bỏ các bản sao cột "Khu vực", vì vậy hãy làm theo các bước dưới đây để viết mã.
Bước 1: Bắt đầu quy trình con bằng cách đặt tên cho mã macro.
Bước 2: Đề cập đến phạm vi dữ liệu bằng cách sử dụng đối tượng Phạm vi VBA .
Mã:
Sub Remove_Duplicates_Example1 () Phạm vi ("A1: C9"). Kết thúc Sub

Bước 3: Sau khi đề cập đến phạm vi truy cập phương pháp VBA “ RemoveDuplicates ”.
Mã:
Sub Remove_Duplicates_Example1 () Range ("A1: C9"). RemoveDuplicates End Sub

Bước 4: Đầu tiên đối số ở cột nào chúng ta cần loại bỏ các giá trị trùng lặp. Trong ví dụ này, từ cột đầu tiên, chúng ta cần loại bỏ các bản sao.
Mã:
Sub Remove_Duplicates_Example1 () Range ("A1: C9"). Các cột RemoveDuplicates: = 1, End Sub

Bước 5: Điều tiếp theo là dữ liệu có tiêu đề hay không. Trong trường hợp này, chúng tôi có tiêu đề, vì vậy hãy chọn “xlYes”.
Mã:
Sub Remove_Duplicates_Example1 () Range ("A1: C9"). Các cột RemoveDuplicates: = 1, Header: = xlYes End Sub

Chạy mã này. Nó sẽ VBA loại bỏ các bản sao từ vùng đã chọn.

Đây là một cách rõ ràng để đề cập đến phạm vi ô. Nếu bạn muốn tự chúng tôi chọn phạm vi và sau đó xóa các bản sao, thì chúng tôi cần sử dụng biến để làm việc với. Trong ví dụ dưới đây, tôi sẽ chỉ cho bạn cách sử dụng các biến trong VBA.
VBA Loại bỏ các bản sao - Ví dụ # 2
Trong ví dụ trên, chúng tôi đã cung cấp cụ thể phạm vi ô. Bây giờ chúng ta sẽ xem cách làm việc với việc lựa chọn các ô của chính chúng ta.
Ví dụ, tôi có một vài bộ dữ liệu, như thể hiện trong hình ảnh bên dưới.

Mỗi lần tôi không thể chỉ định phạm vi ô một cách rõ ràng, vì vậy chúng tôi sẽ chỉ định lựa chọn là phạm vi.
Bước 1: Khai báo biến là Range .
Mã:
Sub Remove_Duplicates_Example2 () Dim Rng As Range End Sub

Bước 2: Phạm vi là một đối tượng. Chúng tôi sẽ đặt phạm vi làm lựa chọn của chúng tôi.
Mã:
Sub Remove_Duplicates_Example2() Dim Rng As Range Set Rng = Selection End Sub

Step 3: Now, instead of a range of cells, we can use the variable “rng.”
Code:
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.

Chúng tôi có các giá trị trùng lặp trong cột đầu tiên và cột thứ tư. Vì vậy, chúng tôi sẽ loại bỏ khỏi các cột này. Sử dụng mã dưới đây để VBA để loại bỏ các bản sao.
Mã:
Sub Remove_Duplicates_Example3 () Dim Rng As Range Set Rng = Range ("A1: D9") Rng.RemoveDuplicates Columns: = Array (1, 4), Header: = xlYes End Sub
Bạn có thể tải xuống VBA Loại bỏ Bản sao Excel này tại đây. VBA Xóa mẫu Excel trùng lặp