Trong công việc sử dụng Excel hàng ngày, danh sách thả thẳng (drop‑down list) là một công cụ cực kỳ hữu ích giúp người dùng nhập dữ liệu nhanh chóng, chính xác và tránh lỗi sai. Tuy nhiên, khi dữ liệu nguồn thay đổi, hoặc khi bạn muốn nâng cấp tính năng cho danh sách, việc sửa đổi danh sách thả thẳng trở nên quan trọng hơn bao giờ hết. Bài viết này sẽ cung cấp một hướng dẫn chi tiết, từ những thao tác cơ bản tới các công thức nâng cao, VBA, Power Query, Power Pivot, và cả các tính năng mới trong Excel 365 (Dynamic Arrays). Bạn sẽ học được cách:
- Tạo, chỉnh sửa, và duy trì danh sách thả thẳng một cách linh hoạt.
- Sử dụng Named Range và Table để tự động cập nhật phạm vi dữ liệu.
- Áp dụng công thức OFFSET, INDEX, CHOOSE, TEXTJOIN, FILTER, UNIQUE, SORT để làm cho danh sách động.
- Tạo danh sách phụ thuộc (dependent drop‑down) với INDIRECT hoặc công thức mới.
- Sử dụng VBA để tự động cập nhật danh sách khi dữ liệu thay đổi.
- Kết nối dữ liệu nguồn từ bên ngoài (SQL, web, API) qua Power Query.
- Tối ưu hóa danh sách thả thẳng tránh lỗi, giới hạn 255 ký tự, ký tự phân cách địa phương, v.v.
Mục tiêu: Sau khi đọc bài viết, bạn sẽ có thể tự tin thiết lập tantra danh sách thả thẳng trong Excel với khả năng mở rộng, tự động cập nhật và dễ bảo trì.
Có thể bạn quan tâm: Excel T-test Two Sample Assuming Unequal Variances
1. Tổng quan về Danh sách Thả thẳng (Data Validation List)
1.1. Định nghĩa
Danh sách thả thẳng là một tính năng của Excel cho phép deterior người dùng chọn một giá trị từ một danh sách đã được xác định trước. Khi nhập dữ liệu vào ô, một mũi tên xuống xuất hiện; khi nhấn vào, danh sách các tùy chọn sẽ hiển thị.
1.2. Khi nào cần dùng?
- Giảm lỗi nhập liệu: Người dùng chỉ có thể chọn các giá trị hợp lệ, tránh nhập sai chính tả.
- Tiết kiệm thời gian: Chỉ cần nhấp chọn, không cần gõ dài.
- Tăng tính nhất quán: Dữ liệu trong bảng tính được thống nhất về định dạng và giá trị.
- Tạo mẫu dữ liệu: Khi làm báo cáo, bảng điều khiển, hoặc mẫu hợp đồng.
Có thể bạn quan tâm: Excel: Lưu File Csv Với Dấu Phẩy Thay Vì Dấu Chấm Phẩy
2. Thao tác Cơ bản: Tạo & Chỉnh sửa Danh sách Thả thẳng
Yo, mở Excel, chọn ô (hoặc vùng ô) mà bạn muốn có danh sách thả thẳng. Sau đó:
- Data → Data Validation.
- Trong tab Settings, chọn Allow: List.
- Trong ô Source, gõ hoặc chọn phạm vi dữ liệu:
=$A$2:$A$10hoặc nhập giá trị tách nhau bằng dấu phẩy:Apple, Banana, Orange. - Nhấn OK.
2.1. Chỉnh sửa danh sách
Nếu bạn muốn thay đổi nội dung danh sách:
– Mở lại Data Validation, rồi chỉnh sửa ô Source.
– Hoặc chỉnh sửa trực tiếp ô nguồn (ví dụ $A$2:$A$10) rồi lưu lại.
Lưu ý: Nếu bạn thay đổi phạm vi, danh sách thả thẳng sẽ tự động cập nhật.
Có thể bạn quan tâm: Excel Quản Lý Toàn Diện Kho Hàng Hóa: Hướng Dẫn Chi Tiết Và Ứng Dụng Thực Tế
3. Sử dụng Named Range và Table để Tự Động Cập Nhật
3.1. Named Range
Named Range (Tên vùng) giúp tránh phải gõ lại phạm vi khi dữ liệu thay đổi.
Bước 1: Chọn vùng dữ liệu (ví dụ A2:A100).
Bước 2: Trên thanh Name Box (bên trái ô công thức) nhập tên: FruitList.
Bước 3: Trong Data Validation, nhập =FruitList.
Khi thêm hoặc gỡ bỏ phần tử trong vùng FruitList, danh sách thả thẳng sẽ tự động cập nhật.
3.2. Table (Bảng)
Excel Table tự động mở rộng khi thêm dữ liệu. Để tạo:
- Chọn vùng dữ liệu, sau đó Insert → Table.
- Đặt tên Table:
tblFruit. - Trong Data Validation, nhập
=tblFruitProduct(cộtProduct).
Ưu điểm: Khi bạn thêm dòng mới vào bảng, danh sách thả thẳng cập nhật ngay.
4. Công Thức Động: OFFSET, INDEX, CHOOSE, TEXTJOIN
4.1. OFFSET
OFFSET trả về một phạm vi từ một ô tham chiếu. Khi bạn muốn danh sách chỉ lấy các giá trị không trống:
=OFFSET($A$2, 0, 0, COUNTA($A$2:$A$100), 1)
COUNTAđếm số ô không rỗng.OFFSETtạo phạm vi từA2tới hàng cuối có dữ liệu.
Trong Data Validation, đặt nguồn thành =OFFSET($A$2, 0, 0, COUNTA($A$2:$A$100), 1).
4.2. INDEX
INDEX trả về giá trị tại vị trí cụ thể trong một mảng:
=INDEX($A$2:$A$100, ROW(1:1))
Khi dùng Data Validation, nhập công thức này và nhấn Ctrl+Shift+Enter để tạo mảng.
4.3. CHOOSE
CHOOSE tạo danh sách từ các đối số:
=CHOOSE({1,2,3,4}, "Apple", "Banana", "Cherry", "Date")
Dùng trong Data Validation khi danh sách cố định, không cần nguồn dữ liệu ngoài.
4.4. TEXTJOIN
TEXTJOIN kết hợp chuỗi với ký tự phân cách. Khi nguồn dữ liệu có dấu phẩy, Sieg:
=TEXTJOIN(",", TRUE, $A$2:$A$100)
Trong Data Validation, nhập =TEXTJOIN(",", TRUE, $A$2:$A$100).
5. Danh sách Đối tượng Phụ thuộc (Dependent Drop‑Down)
5.1. Giới thiệu
Bạn muốn một ô cho phép chọn Tỉnh và ô khác cho phép chọn Quận dựa trên tỉnh đã chọn.
5.2. Thiết lập dữ liệu nguồn
| Tỉnh | Quận |
|---|---|
| HCM | Quận 1 |
| HCM | Quận 2 |
| HCM | Quận 3 |
| TP.HCM | Quận 4 |
| TP.HCM | Quận 5 |
- Tạo bảng
tblLocationvới hai cộtProvince&District.
5.3. Tạo danh sách tỉnh
- Trong ô A1: Data Validation → List → Source:
=tblLocationProvince.
5.4. Tạo danh sách quận phụ thuộc
- Trong ô B1: ్యం Data Validation → List → Source:
=OFFSET($A$2, MATCH(A1, $A$2:$A$100, 0)-1, 1, COUNTIF($A$2:$A$100, A1), 1)
Hoặc dùng công thức mới trong Excel 365:
=FILTER(tblLocationDistrict, tblLocationProvince=A1)
Khi chọn tỉnh trong A1, danh sách quận trong B1 sẽ tự động lọc.
6. Sử dụng VBA để Cập Nhật Danh sách Tự Động
Đôi khi danh sách nguồn nằm trong một workbook khác hoặc cần được cập nhật khi dữ liệu thay đổi. VBA giúp tự động làm điều này.

Có thể bạn quan tâm: Excel Was Unable To Update The Pivot Table: Nguyên Nhân, Khắc Phục Và Körperschluss
Sub UpdateDropDown() Dim wsSrc As Worksheet, wsDest As Worksheet Dim rngSrc As Range, rngDest As Range Set wsSrc = Workbooks("Source.xlsx").Sheets("Sheet1") Set wsDest = ThisWorkbook.Sheets("Sheet1") ' Giả sử dữ liệu nguồn ở A2:A100 Set rngSrc = wsSrc.Range("A2", wsSrc.Cells(wsSrc.Rows.Count, "A").End(xlUp)) ' Định nghĩa nguồn danh sách trong ô đích Set rngDest = wsDest.Range("B2") With rngDest.Validation .Delete .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Formula1:=rngSrc.Address(ReferenceStyle:=xlR1C1, External:=True, Relative:=False) .IgnoreBlank = True .InCellDropdown = True .ShowInput = True .ShowError = True End With
End Sub
Chạy macro UpdateDropDown sẽ đồng bộ danh sách từ workbook nguồn vào workbook hiện tại.
7. Power Query: Kết Nối Dữ Liệu Nguồn Ngoài
Power Query (Get & Transform restaurant) cho phép bạn lấy dữ liệu từ:
- Database (SQL, Access, Oracle, …).
- Web (API, website).
- File (CSV, XLSX, JSON, XML).
- SharePoint, OneDrive.
- …và nhiều hơn nữa.
7.1. Kết nối tới SQL Server
- Data → Get Data → From Database → From SQL Server Database.
- Nhập
ServervàDatabase. - Chọn bảng hoặc viết query:
SELECT Province, District FROM tblLocation. - Tải dữ liệu vào Power Query Editor: chỉnh sửa, lọc, chuyển đổi.
- Close bepalen → Load to → Table trong workbook.
7.2. Sử dụng danh sách được tạo
- Đặt tên cho bảng Power Query:
tblLocationPQ. - Dùng Data Validation → List với nguồn
=tblLocationPQProvince.
7.3. Tự động làm mới
- Bấm phải chuột lên bảng → Table → Refresh.
- Hoặc đặt Refresh every X minutes trong Table Properties.
8. Power Pivot & Data Model: Danh sách từ Mô hình Dữ liệu
Nếu bạn làm việc với dữ liệu lớn, Power Pivot cho phép bạn tạo mối quan hệ giữa các bảng và truy vấn nhanh hơn.
8.1. Tạo mô hình dữ liệu
- Power Pivot → Manage.
- Nhập dữ liệu từ nguồn (Excel, SQL, …).
- Tạo mối quan hệ giữa bảng
tblProvincevàtblDistrict.
8.2. Dùng DAX để tạo danh sách
ProvinceList = VALUES(tblProvinceProvince)
Trong Excel, dùng công thức =ProvinceList trong ô nguồn danh sách.
9. Dynamic Array (Excel 365) – Tạo Danh sách Tự Động
Excel 365 giới thiệu Dynamic Arrays: các hàm FILTER, SORT, UNIQUE, SEQUENCE, RANDARRAY, … giúp tạo danh sách động một cách dễ dàng.
9.1. FILTER
=FILTER(tblLocationDistrict, tblLocationProvince="HCM")
9.2. UNIQUE
=UNIQUE(tblLocationProvince)
9.3. SORT
=SORT(UNIQUE(tblLocationProvince), 1, TRUE)
9.4. Sử dụng trong Data Validation
- Đặt nguồn:
=SORT(UNIQUE(tblLocationProvince)).
9.5. Danh sách phụ thuộc
=FILTER(tblLocationDistrict, tblLocationProvince=A1)
10. Tối Ưu Hóa Danh sách Thả thẳng
10.1. Giới hạn ký tự
- Giới hạn 255 ký tự: Nếu danh sách dài hơn, Excel sẽ cắt bớt. Sử dụng công thức động và Table để tránh.
10.2. Phân cách đúng
- Ở khu vực sử dụng dấu phẩy
,làm phân cách, hãy chắc chắn rằng trong cài đặt Excel (Control Panel → Region) đã đặt dấu phân cách đúng (thường là;trong khu vực châu Âu). Nếu không, hãy dùng;trong ô nguồn.
10.3. Tránh trùng lặp
- Dùng
UNIQUEhoặcRemove Duplicatestrong Data → Remove Duplicates.
10.4. Kiểm tra dữ liệu
- Sử dụng Data Validation → Custom với công thức
=COUNTIF($A$2:$A$100, A1)=1. - Cảnh báo khi nhập dữ liệu trùng lặp.
11. Kiểm Tra và Gỡ Lỗi Danh sách Thả thẳng
| Lỗi | Nguyên nhân | Khắc phục |
|---|---|---|
| Mũi tên không hiện | Data Validation bị vô hiệu | Kiểm tra ô có Data Validation > InCellDropdown |
| Danh sách trống | Phạm vi nguồn trống | Kiểm tra dữ liệu nguồn |
| Giới hạn 255 ký tự | Danh sách quá dài | Sử dụng Named Range, Table hoặc công thức động |
| Dữ liệu không cập nhật | Nguồn dữ liệu không được tải lại | Refresh Power Query / Power Pivot / Table |
| Ký tự phân cách sai | Vùng cài đặt địa phương | Thay , thành ; hoặc ngược lại |
12. Kết Luận
Danhs sách thả thẳng trong Excel là một công cụ mạnh mẽ, nhưng để tận dụng hết tiềm năng, bạn cần biết cách thiết lập, bảo trì và mở rộng chúng một cách unsafe. Dưới đây là những điểm chính:
- Named Range và Table: Giúp tự động mở rộng phạm vi dữ liệu.
- Công thức động (OFFSET, INDEX, CHOOSE, TEXTJOIN, FILTER, UNIQUE, SORT) cho phép danh sách luôn phản ánh dữ liệu mới nhất.
- Dependent drop‑down: Sử dụng INDIRECT, FILTER, hoặc công thức tùy chỉnh để tạo danh sách phụ thuộc.
- VBA: Tự động cập nhật danh sách khi dữ liệu thay đổi,accala.
- Power Query: Kết nối dữ liệu nguồn ngoài và tự động làm mới.
- Power Pivot: Xử lý dữ liệu lớn và tạo mối quan hệ.
- Dynamic Arrays: Tạo danh sách động dễ dàng, nhanh chóng, và lệnh gọn gàng.
- Tối ưu: Kiểm tra giới hạn ký tự, phân cách đúng, tránh trùng lặp.
Bằng cách áp dụng các phương pháp trên, bạn sẽ có một bảng tính chuyên nghiệp, đáng tin cậy và dễ bảo trì. Hãy thử nghiệm từng cách, tự mình khám phá những khả năng tuyệt vời mà Excel mang lại cho công việc của bạn. Happy Excel!

Tiến sĩ Lê Thống Nhất sinh năm 1955 tại Nghệ An, là nhà giáo, nhà báo và doanh nhân trong lĩnh vực giáo dục. Ông từng giảng dạy Toán học tại Trường THPT Chuyên Phan Bội Châu và đảm nhiệm nhiều vai trò trong ngành giáo dục, từ viết sách, biên soạn tài liệu đến sáng lập các dự án hỗ trợ học tập trực tuyến.
Ông là người sáng lập BigSchool – nền tảng giáo dục trực tuyến kết nối giáo viên và học sinh cả nước. Ngoài ra, ông còn nổi tiếng với vai trò tác giả, diễn giả truyền cảm hứng và khách mời trên nhiều chương trình truyền hình, trong đó có “Ai là triệu phú” trên truyền hình VTV.
Trong suốt sự nghiệp, Tiến sĩ Lê Thống Nhất đã nhận nhiều giải thưởng giáo dục và được biết đến như một người luôn đổi mới, ứng dụng công nghệ vào dạy và học, góp phần lan tỏa tri thức và niềm say mê học tập cho thế hệ trẻ.
