Mục lục
Hướng dẫn xem xét cách lấy các giá trị duy nhất trong Excel bằng cách sử dụng hàm UNIQUE và mảng động. Bạn sẽ học một công thức đơn giản để tìm các giá trị duy nhất trong một cột hoặc hàng, trong nhiều cột, dựa trên các điều kiện, v.v.
Trong các phiên bản Excel trước, trích xuất danh sách các giá trị duy nhất giá trị là một thách thức khó khăn. Chúng tôi có một bài viết đặc biệt chỉ ra cách tìm các giá trị duy nhất chỉ xuất hiện một lần, trích xuất tất cả các mục riêng biệt trong danh sách, bỏ qua các khoảng trống, v.v. Mỗi tác vụ yêu cầu sử dụng kết hợp một số hàm và công thức mảng nhiều dòng mà chỉ những chuyên gia Excel mới có thể hiểu đầy đủ.
Việc giới thiệu hàm UNIQUE trong Excel 365 đã thay đổi mọi thứ! Những gì từng là khoa học tên lửa trở nên dễ dàng như ABC. Giờ đây, bạn không cần phải là chuyên gia về công thức để nhận các giá trị duy nhất từ một phạm vi, dựa trên một hoặc nhiều tiêu chí và sắp xếp kết quả theo thứ tự bảng chữ cái. Tất cả được thực hiện với các công thức đơn giản mà mọi người có thể đọc và điều chỉnh theo nhu cầu của riêng bạn.
Hàm UNIQUE của Excel
Hàm UNIQUE trong Excel trả về một danh sách các giá trị duy nhất từ một phạm vi hoặc mảng. Hàm này hoạt động với mọi loại dữ liệu: văn bản, số, ngày tháng, thời gian, v.v.
Hàm này được phân loại theo các hàm Mảng động. Kết quả là một mảng động tự động tràn vào các ô lân cận theo chiều dọc hoặc chiều ngang.
Cú pháp của Excel UNIQUEmột số biểu thức logic trong đối số bao gồm của hàm FILTER, mỗi biểu thức này trả về một mảng các giá trị TRUE và FALSE. Khi các mảng này được cộng lại, các mục có một hoặc nhiều tiêu chí là TRUE sẽ có 1 và các mục có tất cả các tiêu chí là FALSE sẽ có 0. Kết quả là, bất kỳ mục nào đáp ứng bất kỳ điều kiện nào sẽ đưa mục đó vào danh sách mảng được bàn giao cho UNIQUE.
Để biết thêm thông tin, vui lòng xem FILTER với nhiều tiêu chí sử dụng logic OR.
Nhận các giá trị duy nhất trong Excel bỏ qua khoảng trống
Nếu bạn là làm việc với tập dữ liệu có chứa một số khoảng trống, danh sách các giá trị duy nhất thu được bằng công thức thông thường có thể có ô trống và/hoặc giá trị bằng không. Điều này xảy ra vì hàm ĐỘC ĐÁO của Excel được thiết kế để trả về tất cả các giá trị riêng biệt trong một phạm vi, bao gồm cả khoảng trống. Vì vậy, nếu phạm vi nguồn của bạn có cả số không và ô trống, thì danh sách duy nhất sẽ chứa 2 số không, một số đại diện cho ô trống và số còn lại - chính giá trị bằng không. Ngoài ra, nếu dữ liệu nguồn chứa các chuỗi trống được trả về bởi một số công thức, thì danh sách duy nhất cũng sẽ bao gồm một chuỗi trống ("") trông giống như một ô trống:
Để có danh sách các giá trị duy nhất không có khoảng trống, bạn cần làm như sau:
- Lọc ra các ô trống và chuỗi trống bằng cách sử dụng hàm FILTER.
- Sử dụng hàm UNIQUE để giới hạn kết quả thành duy nhấtchỉ các giá trị.
Ở dạng chung, công thức có dạng như sau:
UNIQUE(FILTER( range, range""))Trong ví dụ này, công thức trong D2 là:
=UNIQUE(FILTER(B2:B12, B2:B12""))
Kết quả là Excel trả về một danh sách các tên duy nhất không có ô trống:
Lưu ý. Trong trường hợp dữ liệu gốc chứa số 0 , một giá trị 0 sẽ được đưa vào danh sách duy nhất.
Tìm giá trị duy nhất trong các cột cụ thể
Đôi khi bạn có thể muốn trích xuất giá trị duy nhất các giá trị từ hai hoặc nhiều cột không liền kề nhau. Đôi khi, bạn cũng có thể muốn sắp xếp lại thứ tự các cột trong danh sách kết quả. Cả hai tác vụ đều có thể được thực hiện với sự trợ giúp của hàm CHOOSE.
UNIQUE(CHOOSE({1,2,…}, range1, range2))Từ bảng mẫu của chúng tôi , giả sử bạn muốn nhận danh sách những người chiến thắng dựa trên các giá trị trong cột A và C và sắp xếp kết quả theo thứ tự sau: đầu tiên là một môn thể thao (cột C), sau đó là tên vận động viên (cột A). Để làm được ta lập công thức này:
=UNIQUE(CHOOSE({1,2}, C2:C10, A2:A10))
Và được kết quả như sau:
Công thức này như thế nào hoạt động:
Hàm CHOOSE trả về một mảng 2 chiều gồm các giá trị từ các cột đã chỉ định. Trong trường hợp của chúng tôi, nó cũng hoán đổi thứ tự của các cột.
{"Basketball","Andrew"; "Bóng rổ","Betty"; "Bóng chuyền","David"; "Bóng rổ","Andrew"; "Khúc côn cầu","Andrew"; "Bóng đá","Robert"; "Bóng chuyền","David"; "Khúc côn cầu","Andrew";"Basketball","David"}
Từ mảng trên, hàm UNIQUE trả về danh sách các bản ghi duy nhất.
Tìm các giá trị duy nhất và xử lý lỗi
Các công thức UNIQUE chúng ta đã thảo luận trong hướng dẫn này hoạt động hoàn hảo… miễn là có ít nhất một giá trị đáp ứng các tiêu chí đã chỉ định. Nếu công thức không tìm thấy gì, lỗi #CALC! xảy ra lỗi:
Để ngăn điều này xảy ra, chỉ cần bọc công thức của bạn trong hàm IFERROR.
Ví dụ: nếu không có giá trị duy nhất nào đáp ứng tiêu chí thì tìm thấy, bạn không thể hiển thị gì, tức là một chuỗi trống (""):
=IFERROR(UNIQUE(FILTER(A2:B10, (C2:C10=G1) * (D2:D10
Hoặc bạn có thể thông báo rõ ràng cho người dùng của mình rằng không tìm thấy kết quả nào:
=IFERROR(UNIQUE(FILTER(A2:B10, (C2:C10=G1) * (D2:D10
Hàm ĐỘC ĐÁO trong Excel không hoạt động
Như bạn đã thấy, sự xuất hiện của hàm ĐỘC ĐÁO đã giúp việc tìm kiếm các giá trị duy nhất trong Excel trở nên vô cùng dễ dàng. Nếu đột nhiên công thức của bạn dẫn đến lỗi, thì rất có thể đó là một trong những lỗi sau.
#NAME? lỗi
Xảy ra nếu bạn sử dụng công thức ĐỘC ĐÁO trong phiên bản Excel không hỗ trợ chức năng này.
Hiện tại, hàm ĐỘC ĐÁO chỉ khả dụng trong Excel 365 và 2021. Nếu bạn có công thức khác phiên bản mới nhất, bạn có thể tìm thấy giải pháp thích hợp trong hướng dẫn này: Cách nhận các giá trị duy nhất trong Excel 2019, Excel 2016 trở về trước.
#NAME? lỗi trong các phiên bản được hỗ trợ cho biết tên của hàm bị viết sai chính tả.
#SPILLlỗi
Xảy ra nếu một hoặc nhiều ô trong phạm vi tràn không hoàn toàn trống.
Để khắc phục lỗi, chỉ cần xóa hoặc xóa các ô không trống . Để xem chính xác ô nào đang gây cản trở, hãy nhấp vào chỉ báo lỗi, sau đó nhấp vào Chọn Ô cản trở . Để biết thêm thông tin, vui lòng xem #SPILL! lỗi trong Excel - nguyên nhân và cách khắc phục.
Đó là cách tìm các giá trị duy nhất trong Excel. Tôi cảm ơn bạn đã đọc và hy vọng sẽ gặp bạn trên blog của chúng tôi vào tuần tới!
Sách bài tập thực hành để tải xuống
Ví dụ về công thức giá trị duy nhất của Excel (tệp .xlsx)
hàm như sau:UNIQUE(array, [by_col], [exactly_once])Ở đâu:
Array (bắt buộc) - phạm vi hoặc mảng mà từ đó trả về giá trị duy nhất.
By_col (tùy chọn) - giá trị logic cho biết cách so sánh dữ liệu:
- TRUE - so sánh dữ liệu giữa các cột.
- FALSE hoặc bị bỏ qua (mặc định) - so sánh dữ liệu giữa các hàng.
Exactly_once (tùy chọn) - một giá trị logic xác định giá trị nào được coi là duy nhất:
- TRUE - trả về các giá trị chỉ xảy ra một lần, đó là khái niệm duy nhất trong cơ sở dữ liệu.
- FALSE hoặc bị bỏ qua (mặc định) - trả về tất cả các giá trị riêng biệt (khác nhau) trong phạm vi hoặc mảng.
Lưu ý. Hiện tại, hàm UNIQUE chỉ sẵn dùng trong Excel cho Microsoft 365 và Excel 2021. Excel 2019, 2016 trở về trước không hỗ trợ công thức mảng động, vì vậy, hàm UNIQUE không sẵn dùng trong các phiên bản này.
Công thức UNIQUE cơ bản trong Excel
Dưới đây là công thức giá trị duy nhất của Excel ở dạng đơn giản nhất.
Mục tiêu là trích xuất danh sách các tên duy nhất từ phạm vi B2:B10. Đối với điều này, chúng tôi nhập công thức sau vào D2:
=UNIQUE(B2:B10)
Xin lưu ý rằng các đối số thứ 2 và thứ 3 bị bỏ qua vì giá trị mặc định hoạt động hoàn hảo trong trường hợp của chúng tôi - chúng tôi đang so sánh các hàng với nhau other và muốn trả về tất cả các tên khác nhau trong phạm vi.
Khi bạn nhấn phím Enter để hoàn thành công thức, Excel sẽxuất tên tìm thấy đầu tiên trong D2, đưa các tên khác vào các ô bên dưới. Kết quả là bạn có tất cả các giá trị duy nhất trong một cột:
Trong trường hợp dữ liệu của bạn nằm trên các cột từ B2 đến I2, hãy đặt đối số thứ 2 thành TRUE để so sánh các cột đối diện nhau:
=UNIQUE(B2:I2,TRUE)
Nhập công thức trên vào B4, nhấn Enter và kết quả sẽ tràn theo chiều ngang sang các ô bên phải. Do đó, bạn sẽ nhận được các giá trị duy nhất liên tiếp:
Mẹo. Để tìm các giá trị duy nhất trong một mảng nhiều cột và trả về chúng trong một cột hoặc một hàng, hãy sử dụng UNIQUE cùng với hàm TOCOL hoặc TOROW như minh họa trong các ví dụ bên dưới:
- Trích xuất các giá trị duy nhất từ nhiều -phạm vi cột thành một cột
- Kéo các giá trị duy nhất từ phạm vi nhiều cột vào một hàng
Hàm UNIQUE của Excel - mẹo và lưu ý
UNIQUE là một giá trị mới và giống như các hàm mảng động khác, có một vài đặc điểm mà bạn nên biết:
- Nếu mảng được trả về bởi UNIQUE là kết quả cuối cùng (tức là không được chuyển sang hàm khác), thì Excel sẽ tự động tạo một phạm vi có kích thước thích hợp và đưa vào đó các kết quả. Chỉ cần nhập công thức vào một ô . Điều quan trọng là bạn phải có đủ ô trống phía dưới và/hoặc bên phải ô mà bạn nhập công thức, nếu không sẽ xảy ra lỗi #SPILL.
- Kết quả tự động cập nhật khidữ liệu nguồn thay đổi. Tuy nhiên, các mục nhập mới được thêm bên ngoài mảng được tham chiếu sẽ không được đưa vào công thức trừ khi bạn thay đổi tham chiếu mảng . Nếu bạn muốn mảng tự động phản hồi việc thay đổi kích thước của dải nguồn, thì hãy chuyển đổi dải thành một bảng Excel và sử dụng các tham chiếu có cấu trúc hoặc tạo một dải được đặt tên động.
- Mảng động giữa các tệp Excel khác nhau chỉ hoạt động khi cả hai sổ làm việc đều đang mở . Nếu sổ làm việc nguồn bị đóng, công thức DUY NHẤT được liên kết sẽ trả về lỗi #REF! error.
- Giống như các hàm mảng động khác, UNIQUE chỉ có thể được sử dụng trong phạm vi bình thường, không phải bảng. Khi được đặt trong các bảng Excel, nó sẽ trả về lỗi #SPILL! lỗi.
Cách tìm các giá trị duy nhất trong Excel - ví dụ về công thức
Các ví dụ bên dưới cho thấy một số cách sử dụng thực tế của hàm UNIQUE trong Excel. Ý tưởng chính là trích xuất các giá trị duy nhất hoặc loại bỏ các giá trị trùng lặp, tùy thuộc vào quan điểm của bạn, theo cách đơn giản nhất có thể.
Trích xuất các giá trị duy nhất chỉ xuất hiện một lần
Để nhận danh sách các giá trị xuất hiện trong phạm vi đã chỉ định chính xác một lần, hãy đặt đối số thứ 3 của UNIQUE thành TRUE.
Ví dụ: để lấy tên trong danh sách người chiến thắng một lần, hãy sử dụng công thức sau:
=UNIQUE(B2:B10,,TRUE)
Trong đó B2:B10 là phạm vi nguồn và đối số thứ 2 ( by_col ) là FALSE hoặc bị bỏ qua do dữ liệu của chúng tôi được sắp xếp theocác hàng.
Tìm các giá trị khác biệt xuất hiện nhiều lần
Nếu bạn đang theo đuổi một mục tiêu ngược lại, tức là đang tìm kiếm danh sách các giá trị xuất hiện trong một phạm vi nhất định nhiều lần, sau đó sử dụng hàm UNIQUE cùng với FILTER và COUNTIF:
UNIQUE(FILTER( range , COUNTIF( range , range )>1))Ví dụ: để trích xuất các tên khác nhau xuất hiện trong B2:B10 nhiều lần, bạn có thể sử dụng công thức sau:
=UNIQUE(FILTER(B2:B10, COUNTIF(B2:B10, B2:B10)>1))
Cách thức hoạt động của công thức này:
Trọng tâm của công thức, hàm FILTER lọc ra các mục nhập trùng lặp dựa trên số lần xuất hiện, do hàm COUNTIF trả về. Trong trường hợp của chúng tôi, kết quả của COUNTIF là mảng số đếm này:
{4;1;3;4;4;1;3;4;3}
Thao tác so sánh (>1) thay đổi mảng trên thành giá trị TRUE và FALSE, trong đó TRUE đại diện cho các mục xuất hiện nhiều lần:
{TRUE;FALSE;TRUE;TRUE;TRUE;FALSE;TRUE;TRUE;TRUE}
Mảng này được chuyển cho FILTER dưới dạng đối số include , cho hàm biết giá trị nào sẽ bao gồm trong mảng kết quả:
{"Andrew";"David";"Andrew";"Andrew";"David";"Andrew";"David"}
Như bạn có thể nhận thấy, chỉ những giá trị tương ứng với TRUE mới tồn tại.
Mảng trên đi tới đối số mảng của UNIQUE và sau đó loại bỏ các bản trùng lặp, nó sẽ xuất ra kết quả cuối cùng:
{"Andrew";"David"}
Mẹo. Theo cách tương tự, bạn có thể lọc các giá trị duy nhất xảy ra nhiều hơn hai lần (>2), nhiều hơn ba lần (>3), v.v. Để làm điều này, chỉ cần thay đổisố trong so sánh logic.
Tìm giá trị duy nhất trong nhiều cột (hàng duy nhất)
Trong trường hợp bạn muốn so sánh hai hoặc nhiều cột và trả về giá trị duy nhất giữa chúng, hãy bao gồm tất cả các cột mục tiêu trong đối số mảng .
Ví dụ: để trả về Tên (cột A) và Họ (cột B) duy nhất của những người chiến thắng, chúng ta nhập công thức này vào ô E2:
=UNIQUE(A2:B10)
Nhấn phím Enter sẽ mang lại các kết quả sau:
Để nhận các hàng duy nhất , tức là với sự kết hợp duy nhất của các giá trị trong các cột A, B và C, đây là công thức để sử dụng:
=UNIQUE(A2:C10)
Thật đơn giản phải không? :)
Nhận danh sách các giá trị duy nhất được sắp xếp theo thứ tự bảng chữ cái
Bạn thường sắp xếp bảng chữ cái như thế nào trong Excel? Phải, bằng cách sử dụng tính năng Sắp xếp hoặc Lọc sẵn có. Vấn đề là bạn cần phải sắp xếp lại mỗi khi dữ liệu nguồn của bạn thay đổi, bởi vì không giống như các công thức Excel tự động tính toán lại với mỗi thay đổi trong trang tính, các tính năng phải được áp dụng lại theo cách thủ công.
Với sự ra đời của chức năng mảng động vấn đề này đã biến mất! Điều bạn cần làm chỉ đơn giản là làm cong hàm SORT xung quanh một công thức ĐỘC ĐÁO thông thường, như sau:
SORT(UNIQUE(array))Ví dụ: để trích xuất các giá trị duy nhất trong các cột từ A đến C và sắp xếp các kết quả từ Từ A đến Z, hãy sử dụng công thức sau:
=SORT(UNIQUE(A2:C10))
So với ví dụ trên,đầu ra dễ dàng hơn rất nhiều để nhận thức và làm việc với. Chẳng hạn, chúng ta có thể thấy rõ rằng Andrew và David đã là người chiến thắng trong hai môn thể thao khác nhau.
Mẹo. Trong ví dụ này, chúng tôi đã sắp xếp các giá trị trong cột đầu tiên từ A đến Z. Đây là các giá trị mặc định của hàm SORT, do đó, các đối số sort_index và sort_order tùy chọn được bỏ qua. Nếu bạn muốn sắp xếp kết quả theo một số cột khác hoặc theo thứ tự khác (từ Z đến A hoặc từ cao nhất đến nhỏ nhất), hãy đặt các đối số thứ 2 và thứ 3 như được giải thích trong hướng dẫn về hàm SORT.
Tìm các giá trị duy nhất trong nhiều cột và nối thành một ô
Khi tìm kiếm trong nhiều cột, theo mặc định, hàm UNIQUE của Excel sẽ xuất từng giá trị trong một ô riêng biệt. Có lẽ, bạn sẽ thấy thuận tiện hơn khi có kết quả trong một ô duy nhất?
Để đạt được điều này, thay vì tham chiếu toàn bộ phạm vi, hãy sử dụng dấu và (&) để nối các cột và đặt giá trị mong muốn dấu phân cách ở giữa.
Ví dụ: chúng tôi đang nối tên trong A2:A10 và họ trong B2:B10, phân tách các giá trị bằng ký tự khoảng trắng (" "):
=UNIQUE(A2:A10&" "&B2:B10)
Kết quả là chúng ta có một danh sách tên đầy đủ trong một cột:
Lấy danh sách các giá trị duy nhất dựa trên tiêu chí
Để trích xuất các giá trị duy nhất có điều kiện, hãy sử dụng đồng thời các hàm UNIQUE và FILTER của Excel:
- LỌChàm chỉ giới hạn dữ liệu ở những giá trị đáp ứng điều kiện.
- Hàm UNIQUE xóa các giá trị trùng lặp khỏi danh sách đã lọc.
Đây là phiên bản chung của công thức các giá trị duy nhất đã lọc:
UNIQUE(FILTER(array, criteria_range = criteria ))Đối với ví dụ này, hãy lấy danh sách những người chiến thắng trong một môn thể thao cụ thể. Để bắt đầu, chúng tôi nhập môn thể thao quan tâm vào một số ô, chẳng hạn như F1. Sau đó, sử dụng công thức dưới đây để lấy các tên duy nhất:
=UNIQUE(FILTER(A2:B10, C2:C10=F1))
Trong đó A2:B10 là phạm vi để tìm kiếm các giá trị duy nhất và C2:C10 là phạm vi để kiểm tra tiêu chí .
Lọc các giá trị duy nhất dựa trên nhiều tiêu chí
Để lọc các giá trị duy nhất có hai điều kiện trở lên, hãy sử dụng các biểu thức như minh họa bên dưới để xây dựng các tiêu chí bắt buộc đối với hàm FILTER:
UNIQUE(FILTER(mảng, ( criteria_range1 = criteria1 ) * ( criteria_range2 = criteria2 )) )Kết quả của công thức là một danh sách các mục nhập duy nhất mà tất cả các điều kiện đã chỉ định là TRUE. Về mặt Excel, đây được gọi là logic AND.
Để xem công thức đang hoạt động, hãy lấy danh sách những người chiến thắng duy nhất cho môn thể thao trong G1 (tiêu chí 1) và dưới độ tuổi trong G2 (tiêu chí 2) ).
Với phạm vi nguồn ở A2:B10, thể thao ở C2:C10 (phạm vi_tiêu chí 1) và độ tuổi ở D2:D10 (phạm vi_tiêu chí 2), công thức có dạng sau:
=UNIQUE(FILTER(A2:B10, (C2:C10=G1) * (D2:D10
Và trả về chính xáckết quả mà chúng tôi đang tìm kiếm:
Cách thức hoạt động của công thức này:
Dưới đây là giải thích cấp cao về logic của công thức:
Trong đối số bao gồm của hàm FILTER, bạn cung cấp hai hoặc nhiều cặp phạm vi/tiêu chí. Kết quả của mỗi biểu thức logic là một mảng các giá trị TRUE và FALSE. Phép nhân của các mảng buộc các giá trị logic thành các số và tạo ra một mảng gồm 1 và 0. Vì nhân với 0 luôn cho kết quả bằng 0, nên chỉ những mục đáp ứng tất cả các điều kiện mới có 1 trong mảng cuối cùng. Hàm FILTER lọc ra các mục tương ứng với 0 và chuyển kết quả sang UNIQUE.
Để biết thêm thông tin, vui lòng xem FILTER với nhiều tiêu chí bằng logic AND.
Lọc các giá trị duy nhất với nhiều OR tiêu chí
Để có danh sách các giá trị duy nhất dựa trên nhiều tiêu chí OR, tức là khi tiêu chí OR này là TRUE, hãy thêm các biểu thức logic thay vì nhân chúng:
UNIQUE(FILTER(array, ( criteria_range1 = criteria1 ) + ( criteria_range2 = criteria2 ))))Ví dụ: để hiển thị những người chiến thắng trong Bóng đá hoặc Hockey , bạn có thể sử dụng công thức sau:
=UNIQUE(FILTER(A2:B10, (C2:C10="Soccer") + (C2:C10="Hockey")))
Nếu cần, tất nhiên bạn có thể nhập tiêu chí vào các ô riêng biệt và tham chiếu đến các ô đó như hiển thị bên dưới:
=UNIQUE(FILTER(A2:B10, (C2:C10=G1) + (C2:C10=G2)))
Cách thức hoạt động của công thức này:
Giống như khi kiểm tra nhiều tiêu chí AND, Nơi ở của bạn