Bạn có một bảng dữ liệu dài hàng trăm dòng và chỉ muốn lấy ra đúng một thông tin theo điều kiện, ví dụ họ tên của khách hàng có mã KH03? Thay vì dò từng dòng bằng mắt, bạn có thể dùng hàm DGET trong Excel để Excel làm việc đó trong vài giây.
Bài viết này được đội ngũ kỹ thuật TechCare biên soạn bằng ngôn ngữ đơn giản, chia thành từng bước có số thứ tự. TechCare đã hỗ trợ hàng nghìn khách hàng sử dụng laptop và Office hằng ngày, nên các hướng dẫn dưới đây đều được kiểm tra thao tác thực tế trước khi đăng. Bạn chỉ cần làm theo từng bước là được.
Hàm DGET trong Excel là gì?
DGET là viết tắt của Database Get, tạm hiểu là "lấy dữ liệu từ bảng". Đây là một hàm thuộc nhóm hàm cơ sở dữ liệu (Database functions) của Excel. Hàm này tìm trong bảng dòng thỏa mãn điều kiện bạn đặt ra và trả về một giá trị duy nhất của dòng đó.
Hiểu đơn giản: bạn nói với Excel "Hãy tìm người có mã KH03 và cho tôi biết họ tên", Excel sẽ trả lời ngay.
Điểm đặc biệt của DGET là chỉ chấp nhận đúng một kết quả. Nếu có nhiều dòng cùng thỏa điều kiện, hoặc không có dòng nào, hàm sẽ báo lỗi để bạn biết dữ liệu cần kiểm tra lại. Nhờ vậy DGET rất phù hợp khi bạn cần kết quả chính xác, ví dụ tra mã nhân viên, mã đơn hàng, mã sản phẩm.

Cú pháp hàm DGET
=DGET(database; field; criteria)
Trong đó:
- database: toàn bộ bảng dữ liệu, bao gồm cả dòng tiêu đề (ví dụ A1:D7).
- field: cột chứa giá trị bạn muốn lấy. Có thể gõ tên cột trong dấu ngoặc kép (ví dụ "Họ và tên"), gõ số thứ tự cột trong bảng (ví dụ 2), hoặc chọn ô chứa tên cột.
- criteria: vùng điều kiện, gồm một dòng tiêu đề và ít nhất một dòng điều kiện nằm bên dưới.
Lưu ý về dấu phân cách: tùy cài đặt vùng (Region) trên máy, Excel dùng dấu chấm phẩy (;) hoặc dấu phẩy (,) để ngăn cách các đối số. Nếu Excel báo lỗi công thức, bạn thử đổi qua lại giữa hai dấu này.
Hướng dẫn sử dụng hàm DGET từng bước
Bước 1: Chuẩn bị bảng dữ liệu
Mở Excel, nhập bảng dữ liệu như trên. Mỗi cột cần có một tiêu đề rõ ràng ở dòng đầu tiên và không để dòng trống chen giữa bảng.

Bước 2: Tạo vùng điều kiện
Tại một vị trí trống bên ngoài bảng (ví dụ ô F1), gõ tiêu đề cột giống hệt tiêu đề trong bảng, rồi gõ điều kiện ngay bên dưới. Ví dụ muốn tìm mã KH03: ô F1 gõ Mã KH, ô F2 gõ KH03.

Bước 3: Nhập công thức DGET
Chọn một ô trống bất kỳ (ví dụ F4) và gõ:
=DGET(A1:D7;"Họ và tên";F1:F2)


Bước 4: Nhấn Enter
Excel trả về Lý Hoàng Phúc, đúng là khách hàng có mã KH03.

Ví dụ thứ hai: tìm theo điều kiện số
Muốn biết ai có tuổi nhỏ hơn 19? Tại vùng điều kiện, gõ Tuổi ở G1 và <19 ở G2, rồi dùng công thức:
=DGET(A1:D7;"Họ và tên";G1:G2)
Kết quả là Nguyễn Văn An (18 tuổi), vì chỉ có một người thỏa điều kiện.
Ví dụ thứ ba: kết hợp nhiều điều kiện
Muốn tìm khách hàng ở Đà Nẵng và trên 35 tuổi, bạn đặt các điều kiện cùng một dòng như sau:
Công thức =DGET(A1:D7;"Họ và tên";G1:H2) sẽ trả về Võ Thu Hà. Điều kiện đặt cùng dòng được hiểu là "và" (phải thỏa cả hai). Nếu đặt ở hai dòng khác nhau, Excel hiểu là "hoặc", và kết quả thường sẽ ra nhiều dòng nên DGET báo lỗi.
Hai lỗi thường gặp và cách sửa
Lỗi #NUM!

- Dấu hiệu: ô công thức hiện #NUM!.
- Nguyên nhân: có từ hai dòng trở lên cùng thỏa điều kiện. Ví dụ đổi điều kiện tuổi thành <20 thì cả An (18) và Dũng (19) đều khớp.
- Cách sửa: thêm điều kiện để chỉ còn một dòng (ví dụ thêm cột Thành phố), hoặc dùng mã duy nhất như Mã KH.
Lỗi #VALUE!
- Dấu hiệu: ô công thức hiện #VALUE!.
- Nguyên nhân: không có dòng nào thỏa điều kiện, hoặc tiêu đề trong vùng điều kiện không khớp với tiêu đề trong bảng (thừa dấu cách, sai chính tả), hoặc dữ liệu sai kiểu (số nhập thành chữ).
- Cách sửa: kiểm tra lại từng tiêu đề, xóa dấu cách thừa và đảm bảo kiểu dữ liệu giống nhau.
Mẹo: bọc công thức bằng IFERROR để hiện thông báo dễ hiểu, ví dụ =IFERROR(DGET(A1:D7;"Họ và tên";F1:F2);"Không tìm thấy").
So sánh DGET với VLOOKUP và INDEX + MATCH
| Tiêu chí | DGET | VLOOKUP | INDEX + MATCH |
| Mục đích | Lấy một giá trị theo điều kiện | Tra cứu theo cột đầu tiên | Tra cứu linh hoạt |
| Nhiều điều kiện | Có, qua vùng điều kiện | Khó, cần cột phụ | Có, nếu dùng công thức mảng |
| Khi có nhiều dòng khớp | Báo lỗi #NUM! | Lấy dòng đầu tiên | Lấy dòng đầu tiên |
| Hướng tra cứu | Cột nào cũng được | Chỉ từ trái sang phải | Cả hai hướng |
| Độ dễ dùng | Trung bình | Dễ | Trung bình |
Nếu bạn muốn chắc chắn dữ liệu không bị trùng, DGET là lựa chọn tốt. Nếu chỉ cần tra cứu nhanh, VLOOKUP vẫn đơn giản hơn.
Lưu ý khi dùng hàm DGET
- Tiêu đề ở vùng điều kiện phải khớp hoàn toàn với tiêu đề trong bảng.
- Không dùng DGET khi dữ liệu có thể trùng lặp, vì hàm chỉ chấp nhận một kết quả.
- Không để dòng trống trong vùng điều kiện, vì dòng trống có thể làm mọi dòng đều khớp.
- Khi sao chép công thức, hãy cố định vùng bằng ký hiệu dấu đô la, ví dụ $A$1:$D$7.
- Đặt vùng điều kiện bên ngoài bảng dữ liệu để không bị chèn lẫn khi thêm dòng mới.
Kinh nghiệm từ TechCare
Rất nhiều khách hàng mang file Excel đến nhờ kiểm tra vì công thức báo lỗi, và nguyên nhân thường là tiêu đề lệch một dấu cách hoặc số bị lưu dạng chữ. Trước khi nghi ngờ công thức, bạn hãy bấm vào ô tiêu đề và kiểm tra xem có khoảng trắng thừa không. Ngoài ra, nên lưu file thường xuyên (Ctrl + S) và sao lưu một bản trước khi sửa công thức hàng loạt.
Khi nào nên đem máy đến kỹ thuật viên?
Hàm DGET chỉ là công cụ trong Excel, nhưng nếu gặp các tình huống sau, bạn nên nhờ kỹ thuật viên hỗ trợ:

- Excel bị đơ, treo hoặc tự thoát khi mở file dữ liệu lớn.
- Máy chạy chậm, nóng hoặc quạt kêu to khi xử lý bảng tính.
- Excel báo lỗi cài đặt, không mở được, hoặc cần cài lại Office.
- File bị hỏng, không mở được và bạn lo mất dữ liệu quan trọng.
Đừng tự tháo máy hay cài phần mềm lạ khi chưa chắc chắn, vì có thể làm mất dữ liệu. Đội ngũ TechCare sẵn sàng kiểm tra và tư vấn rõ ràng trước khi xử lý.
Câu hỏi thường gặp
Nguồn tham khảo chính thức
- Microsoft Support: trang hướng dẫn hàm DGET (DGET function), support.microsoft.com
- Microsoft Support: tổng quan các hàm cơ sở dữ liệu (Database functions) trong Excel
Bài viết được biên soạn bởi đội ngũ chuyên gia TechCare | Cập nhật: Tháng 10/2026






