Mục lục
Hướng dẫn chỉ ra cách tạo danh sách thả xuống Excel tùy thuộc vào ô khác bằng cách sử dụng các hàm mảng động mới.
Tạo danh sách thả xuống đơn giản trong Excel thật dễ dàng. Tạo trình đơn thả xuống theo tầng đa cấp luôn là một thách thức. Hướng dẫn được liên kết ở trên mô tả bốn cách tiếp cận khác nhau, mỗi cách bao gồm một số bước điên cuồng, một loạt các công thức khác nhau và một số hạn chế liên quan đến các mục nhập nhiều từ, các ô trống, v.v.
Đó là điều tồi tệ Tin tức. Tin vui là những phương pháp đó được thiết kế cho các phiên bản Excel động trước. Sự ra đời của mảng động trong Excel 365 đã thay đổi mọi thứ! Với các hàm mảng động mới, việc tạo nhiều danh sách thả xuống phụ thuộc chỉ mất vài phút, nếu không muốn nói là vài giây. Không mánh khóe, không cẩn thận, không vô nghĩa. Chỉ có các giải pháp nhanh, đơn giản và dễ thực hiện.
Lưu ý:
- Cách tạo danh sách thả xuống bằng mảng động mới này chỉ hoạt động trong Excel 365 và Excel 2021. Trong Excel tiền động, bạn sẽ phải thực hiện theo cách cũ như được mô tả trong Tạo trình đơn thả xuống phụ thuộc trong Excel 2019 - 2007.
- Giải pháp này dành cho một hàng. Nếu bạn muốn sao chép danh sách chọn của mình xuống nhiều hàng , hãy làm theo hướng dẫn trong Danh sách thả xuống phụ thuộc cho nhiều hàng.
- Chọn một ô mà bạn muốn danh sách thả xuống xuất hiện (D3 trong trường hợp của chúng tôi).
- Trên tab Dữ liệu , trong nhóm Công cụ dữ liệu , hãy nhấp vào Xác thực dữ liệu .
- Trong hộp thoại Xác thực dữ liệu , hãy làm như sau:
- Trong Cho phép , chọn Danh sách .
- Trong hộp Nguồn , hãy nhập tham chiếu đến đầu ra phạm vi tràn theo công thức ĐỘC ĐÁO. Đối với điều này, hãy nhập thẻ băm ngay sau tham chiếu ô, như sau: =$G$3#
Đây được gọi là tham chiếu phạm vi tràn và cú pháp này đề cập đến toàn bộ phạm vi bất kể nó mở rộng hay thu hẹp bao nhiêu.
- Nhấp vào OK để đóng hộp thoại.
- Để có các mục mới được đưa vào trong danh sách thả xuống tự động , hãy định dạng dữ liệu nguồn của bạn dưới dạng bảng Excel. Hoặc bạn có thể bao gồm một vài ô trống trong công thức của mình như minh họa trong ví dụ này.
- Nếu dữ liệu gốc của bạn chứa bất kỳ khoảng trống nào, bạn có thể lọc bỏ các ô trống bằng cách sử dụng giải pháp này.
- Để sắp xếp theo bảng chữ cái các mục trong danh sách thả xuống, hãy bọc công thức của bạn trong hàm SORT như được giải thích trong ví dụ này.
- Để tự động bao gồm dữ liệu mới khi dữ liệu được thêm vào danh sách nguồn, thêm một vài ô bổ sung vào các mảng được tham chiếu trong công thức của bạn.
- Để loại trừ các ô trống , hãy định cấu hình các công thức để bỏ qua các ô trống cho đến khi chúng được lấp đầy.
Cách tạo danh sách thả xuống động trong Excel
Ví dụ này minh họa tổng quátphương pháp tạo danh sách thả xuống xếp tầng trong Excel bằng cách sử dụng các hàm mảng động mới.
Giả sử bạn có danh sách trái cây ở cột A và nhà xuất khẩu ở cột B. Một điều phức tạp nữa là tên trái cây không được nhóm lại nhưng nằm rải rác trên cột. Mục tiêu là đặt các tên trái cây duy nhất trong trình đơn thả xuống đầu tiên và tùy thuộc vào lựa chọn của người dùng, hiển thị các nhà xuất khẩu có liên quan trong trình đơn thả xuống thứ hai.
Để tạo một danh sách thả xuống phụ thuộc động trong Excel, hãy thực hiện các bước sau:
1. Lấy các mục cho danh sách thả xuống chính
Đối với người mới bắt đầu, chúng tôi sẽ trích xuất tất cả các tên trái cây khác nhau từ cột A. Điều này có thể được thực hiện bằng cách sử dụng hàm UNIQUE ở dạng đơn giản nhất - cung cấp danh sách trái cây cho đối số đầu tiên ( mảng ) và bỏ qua các đối số tùy chọn còn lại vì giá trị mặc định của chúng phù hợp với chúng tôi:
=UNIQUE(A3:A15)
Công thức chuyển đến G3 và sau khi nhấn phím Enter, kết quả tự động tràn vào các ô tiếp theo.
2. Tạo danh sách thả xuống chính
Để tạo danh sách thả xuống chính của bạn, hãy định cấu hình quy tắc Xác thực dữ liệu Excel theo cách này:
Lượt truy cập chính của bạn danh sách xuống đã xong!
3. Nhận các mục cho danh sách thả xuống phụ thuộc
Để nhận các mục cho menu thả xuống phụ, chúng tôi sẽ lọc các giá trị trong cột B dựa trên giá trị được chọn trong danh sách thả xuống đầu tiên. Điều này có thể được thực hiện với sự trợ giúp của một hàm mảng động khác có tên là FILTER:
=FILTER(B3:B15, A3:A15=D3)
Trong đó B3:B15 là dữ liệu nguồn cho trình đơn thả xuống phụ thuộc của bạn, A3:A15 là dữ liệu nguồn cho danh sách thả xuống chính của bạn và D3 là ô thả xuống chính.
Để đảm bảo công thức hoạt động chính xác, bạn có thể chọn một số giá trị trong danh sách thả xuống đầu tiên và quan sát kết quả do FILTER trả về. Hoàn hảo! :)
4. Tạo danh sách thả xuống phụ thuộc
Để tạo danh sách thả xuống thứ hai, hãy định cấu hình tiêu chí xác thực dữ liệu chính xác như bạn đã làm cho danh sách thả xuống đầu tiên ở bước 2. Nhưng lần này, hãy tham khảo phạm vi tràn do hàm FILTER trả về: =$H$3#
Chính là nó! Danh sách thả xuống phụ thuộc vào Excel của bạn đã sẵn sàng để sử dụng.
Mẹo vàlưu ý:
Cách tạo nhiều danh sách thả xuống phụ thuộc trong Excel
Trong ví dụ trước, chúng ta đã tạo một danh sách thả xuống tùy thuộc vào một ô khác. Nhưng điều gì sẽ xảy ra nếu bạn cần một hệ thống phân cấp đa cấp, tức là danh sách thả xuống thứ 3 tùy thuộc vào danh sách thứ 2 hoặc thậm chí là danh sách thả xuống thứ 4 tùy thuộc vào danh sách thứ 3. Điều đó có thể không? Có, bạn có thể thiết lập bất kỳ số lượng danh sách phụ thuộc nào (tất nhiên là số lượng hợp lý :).
Đối với ví dụ này, chúng tôi đã đặt các tiểu bang/tỉnh trong cột C và hiện đang tìm cách thêm một danh sách thả xuống tương ứng menu trong G3:
Để tạo danh sách thả xuống phụ thuộc nhiều thành phần trong Excel, bạn cần làm như sau:
1. Thiết lập danh sách thả xuống đầu tiên
Danh sách thả xuống chính được tạo với các bước giống hệt như trong ví dụ trước (vui lòng xem bước 1 và 2 ở trên). Sự khác biệt duy nhất là tham chiếu phạm vi tràn mà bạn nhập vào hộp Nguồn .
Lần này, công thức ĐỘC ĐÁO nằm trong E8 và trình đơn thả xuống chínhdanh sách sẽ có trong E3. Vì vậy, bạn chọn E3, nhấp vào Xác thực dữ liệu và cung cấp tham chiếu sau: =$E$8#
2. Định cấu hình trình đơn thả xuống thứ hai
Như bạn có thể nhận thấy, giờ đây, cột B chứa nhiều lần xuất hiện của cùng một nhà xuất khẩu. Nhưng bạn chỉ muốn những tên duy nhất trong danh sách thả xuống của mình, phải không? Để loại bỏ tất cả các lần xuất hiện trùng lặp, hãy bọc hàm ĐỘC ĐÁO xung quanh công thức LỌC của bạn và nhập công thức cập nhật này vào F8:
=UNIQUE(FILTER(B3:B15, A3:A15=E3))
Trong đó B3:B15 là dữ liệu nguồn cho trình đơn thả xuống thứ hai , A3:A15 là dữ liệu nguồn cho danh sách thả xuống đầu tiên và E3 là ô thả xuống đầu tiên.
Sau đó, sử dụng tham chiếu phạm vi tràn sau cho tiêu chí Xác thực dữ liệu: =$F$8#
3. Thiết lập danh sách thả xuống thứ ba
Để thu thập các mục cho danh sách thả xuống thứ ba, hãy sử dụng công thức LỌC với nhiều tiêu chí. Tiêu chí đầu tiên kiểm tra toàn bộ danh sách trái cây so với giá trị được chọn trong danh sách thả xuống thứ nhất (A3:A15=E3) trong khi tiêu chí thứ hai kiểm tra danh sách các nhà xuất khẩu dựa trên lựa chọn trong danh sách thả xuống thứ 2 (B3:B15=F3). Công thức hoàn chỉnh cho G8:
=FILTER(C3:C15, (A3:A15=E3) * (B3:B15=F3))
Nếu bạn định thêm nhiều danh sách thả xuống phụ thuộc hơn (thứ 4, thứ 5, v.v.), thì rất có thể cột C sẽ chứa nhiều lần xuất hiện giống nhau mục. Để ngăn các bản sao vào bảng chuẩn bị và do đó trong danh sách thả xuống thứ 3, hãy lồng công thức FILTER vàochức năng ĐỘC ĐÁO như chúng ta đã làm ở bước trước:
=UNIQUE(FILTER(C3:C15, (A3:A15=E3) * (B3:B15=F3)))
Điều cuối cùng bạn cần làm là tạo thêm một quy tắc Xác thực dữ liệu với tham chiếu Nguồn này: =$G$8#
Danh sách thả xuống nhiều người phụ thuộc của bạn rất phù hợp để sử dụng!
Mẹo. Theo cách tương tự, bạn có thể nhận các mục cho các lần thả xuống tiếp theo . Giả sử cột D chứa dữ liệu nguồn cho danh sách thả xuống thứ 4 của bạn, bạn có thể nhập công thức sau vào H8 để truy xuất các mục tương ứng:
=UNIQUE(FILTER(D3:D15, (A3:A15=E3) * (B3:B15=F3) * (C3:C15=G3)))
Cách tạo danh sách thả xuống có thể mở rộng trong Excel
Sau khi tạo danh sách thả xuống, mối quan tâm đầu tiên của bạn có thể là điều gì sẽ xảy ra khi bạn thêm các mục mới vào dữ liệu nguồn. Danh sách thả xuống có tự động cập nhật không? Nếu dữ liệu gốc của bạn được định dạng dưới dạng bảng Excel, thì có, danh sách thả xuống động được thảo luận trong các ví dụ trước sẽ tự động mở rộng mà bạn không cần phải nỗ lực vì bản chất của bảng Excel là có thể mở rộng.
Nếu đối với một số người lý do sử dụng bảng Excel không phải là một tùy chọn, bạn có thể làm cho danh sách thả xuống của mình có thể mở rộng theo cách này:
Lưu ý hai điểm này, hãy tinh chỉnh các công thức trongbảng chuẩn bị dữ liệu của chúng tôi. Quy tắc Xác thực dữ liệu hoàn toàn không yêu cầu bất kỳ điều chỉnh nào.
Công thức cho danh sách thả xuống chính
Với các tên trái cây trong A3:A15, chúng tôi thêm 5 ô bổ sung vào mảng để đáp ứng nhu cầu có thể lôi vao mơi. Ngoài ra, chúng tôi nhúng hàm FILTER vào UNIQUE để trích xuất các giá trị duy nhất không có khoảng trống.
Căn cứ vào điều trên, công thức trong G3 có dạng sau:
=UNIQUE(FILTER(A3:A20, A3:A20""))
Công thức cho trình đơn thả xuống phụ thuộc
Công thức trong G3 không cần điều chỉnh nhiều - chỉ cần mở rộng mảng thêm một vài ô:
=FILTER(B3:B20, A3:A20=D3)
Kết quả là một trình đơn thả xuống phụ thuộc có thể mở rộng hoàn toàn động danh sách thả xuống:
Cách sắp xếp danh sách thả xuống theo thứ tự abc
Bạn muốn sắp xếp danh sách thả xuống của mình theo thứ tự abc mà không cần dùng đến dữ liệu nguồn? Excel động mới cũng có chức năng đặc biệt cho việc này! Trong bảng chuẩn bị dữ liệu của bạn, chỉ cần bọc hàm SORT xung quanh các công thức hiện có của bạn.
Các quy tắc xác thực dữ liệu được định cấu hình chính xác như được mô tả trong các ví dụ trước.
Để sắp xếp từ A đến Z
Vì thứ tự sắp xếp tăng dần là tùy chọn mặc định nên bạn chỉ có thể lồng các công thức hiện có của mình vào đối số mảng của SORT, bỏ qua tất cả các đối số tùy chọn khác.
Đối với trình đơn thả xuống chính (công thức trong G3):
=SORT(UNIQUE(FILTER(A3:A20, A3:A20"")))
Đối với trình đơn thả xuống phụ thuộc (công thức trong H3):
=SORT(FILTER(B3:B20, A3:A20=D3))
Xong! Cả hai danh sách thả xuống nhận đượcđược sắp xếp theo thứ tự bảng chữ cái từ A đến Z.
Để sắp xếp từ Z đến A
Để sắp xếp theo thứ tự giảm dần, bạn cần đặt đối số thứ 3 ( sort_order ) của hàm SORT thành -1.
Đối với trình đơn thả xuống chính (công thức trong G3):
=SORT(UNIQUE(FILTER(A3:A20, A3:A20"")), 1, -1)
Đối với trình đơn thả xuống phụ thuộc (công thức trong H3):
=SORT(FILTER(B3:B20, A3:A20=D3), 1, -1)
Điều này sẽ sắp xếp cả dữ liệu trong bảng chuẩn bị và các mục trong danh sách thả xuống từ Z đến A :
Đó là cách tạo danh sách thả xuống động trong Excel với sự trợ giúp của các hàm mảng động mới. Không giống như các phương pháp truyền thống, phương pháp này hoạt động hoàn hảo cho các mục nhập đơn và nhiều từ và xử lý bất kỳ ô trống nào. 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
Danh sách thả xuống phụ thuộc Excel (tệp .xlsx)