Excel lấy giá trị duy nhất trong một cột

Trong Excel để lấy giá trị duy nhất trong một cột đã có sẵn tính năng như vậy .Chọn tab Data > Advanced

 

\"hinh1\"

Trong mục List range chọn cột dữ liệu bạn muốn lấy ra

Đánh dấu tích vào mục Copy to another location

Đánh dấu tích vào Unique records only

Copy to là vị trí ô bạn muốn lấy những bản ghi duy nhất ra , rồi bấm OK

 

\"hinh2\"

 

Tuy nhiên cách làm này không phải lúc nào cũng được như ý vì thế bạn có thể tạo một hàm để thực hiện việc này .

Mở Excel , bấm tổ hợp phím Alt-F11để mở cửa sổ Microsoft Visual Basic .

Bấm menu Insert > Module

Bạn sao chép nội dung bên dưới vào phần này

 

Function listUnique(rng As Range) As Variant

   Dim row As Range

   Dim elements() As String

   Dim elementSize As Integer

   Dim newElement As Boolean

   Dim i As Integer

   Dim distance As Integer

   Dim result As String

 

   elementSize = 0

   newElement = True

 

   For Each row In rng.Rows

       If row.Value <> \"\" Then

           newElement = True

           For i = 1 To elementSize Step 1

               If elements(i - 1) = row.Value Then

                   newElement = False

               End If

           Next i

           If newElement Then

               elementSize = elementSize + 1

               ReDim Preserve elements(elementSize - 1)

               elements(elementSize - 1) = row.Value

           End If

       End If

   Next

 

   distance = Range(Application.Caller.Address).row - rng.row

 

   If distance < elementSize Then

       result = elements(distance)

       listUnique = result

   Else

       listUnique = \"\"

   End If

End Function

 

Quay trở về Excel ,

Muốn lọc , ví dụ cột A , bạn gõ công thức

 

=listUnique($A$1:$A$100)

 

Sau đó kéo công thức này cho tới hết cột dữ liệu , trong ví dụ là dòng thứ 100 , bạn sẽ được kết quả như ý .

Nếu như ví dụ bạn không có nội dung gì ở hàng đầu tiên , hàng 1

 

\"hinh3\"

 

Bạn sẽ dùng công thức mảng

 

=INDEX($A$2:$A$20, MATCH(0, COUNTIF($B$1:B1, $A$2:$A$20), 0)) ,

rồi bấm tổ hợp phím Ctrl_Shift_Enter để tạo công thức mảng .

 

Sau đó kéo từ hàng 2 tới hàng 20 để thực hiện nốt công việc .