Cách Sử Dụng Các Hàm Tìm Kiếm Trong Excel

Trong thế giới dữ liệu ngày nay, Excel vẫn là công cụ được nhiều người dùng tin tưởng để quản lý, phân tích và trích xuất thông tin. Một trong những tính năng quan trọng nhất của Excel là khả năng tìm kiếm và trích xuất dữ liệu nhanh chóng. Để thực hiện điều này, Excel cung cấp nhiều hàm tìm kiếm khác nhau như VLOOKUP, HLOOKUP, XLOOKUP, INDEX + MATCH, CHOOSE, OFFSET, MATCH, LOOKUP và các hàm hỗ trợ khác. Hướng dẫn chi tiết dưới đây sẽ giúp bạn nắm vững cách sử dụng từng hàm, lợi ích của chúng, cách áp dụng trong thực tế và những mẹo nhỏ để tránh lỗi thường gặp.

1. Tổng Quan Về Các Hàm Tìm Kiếm

1.1 Hàm VLOOKUP (Tìm Giá Trị Dọc)

  • Cú pháp: VLOOKUP(lookup_value, table_array, col_index_num, range_lookup)
  • Mô tả: Tìm kiếm một giá trị trong cột đầu tiên của bảng và trả về giá trị tương ứng từ cột được chỉ định.
  • Ưu điểm: Đơn giản, dễ nhớ.
  • Nhược điểm: Chỉ tìm kiếm theo chiều dọc, không linh hoạt khi cột khóa không ở bên trái, hạn chế tìm kiếm không chính xác khi range_lookup=TRUE (tìm kiếm gần nhất).

1.2 Hàm HLOOKUP (Tìm Giá Trị Ngang)

  • Cú pháp: HLOOKUP(lookup_value, table_array, row_index_num, range_lookup)
  • Mô tả: Tương tự VLOOKUP nhưng áp dụng cho hàng đầu tiên của bảng.
  • Ứng dụng: Thường dùng khi dữ liệu được tổ chức theo chiều ngang, ví dụ bảng thống kê theo năm.

1.3 Hàm XLOOKUP (Tìm Kiếm Tùy Chỉnh)

  • Cú pháp: XLOOKUP(lookup_value, lookup_array, return_array, if_not_found, match_mode, search_mode)
  • Mô tả: Thay thế hoàn toàn VLOOKUP/HLOOKUPировал. Cho phép tìm kiếm ở bất kỳ cột/hàng രണ്ട്, hỗ trợ tìm kiếm chính xác, gần nhất, trỏ ngược, và trả về giá trị lỗi tùy chỉnh.
  • Ưu điểm: Rất linh hoạt America’s, dễ đọc, hỗ trợ nhiều tính năng mới.

1.4 Cặp Hàm INDEX + MATCH

  • Cú pháp: INDEX(array, row_num, column_num) kết hợp với MATCH(lookup_value, lookup_array, match_type).
  • Mô tả: INDEX trả về giá trị tại vị trí hàng/ cột, MATCH tìm vị trí của giá trị. Khi kết hợp, chúng ta có thể tìm kiếm trong bất kỳ cột nào bất kể vị trí.
  • Ưu điểm: Linh hoạt cao, tránh giới hạn của VLOOKUP. Hữu ích khi cần tìm kiếm theo nhiều tiêu chí.

1.5 Hàm CHOOSE

  • Cú pháp: CHOOSE(index_num, value1, value2, ...)
  • Mô tả: Chọn một giá trị từ danh sách dựa vào chỉ số. Thường dùng kết hợp với INDEX + MATCH để chuyển đổi cột động.

1.6 Hàm OFFSET

  • Cú pháp: OFFSET(reference, rows, cols, height, width)
  • Mô tả delimiter OFFSET trả về vùng dữ liệu di chuyển từ ô tham chiếu. Thường dùng khi cần trích xuất dữ liệu từ bảng động.

1.7 Hàm MATCH

  • Cú pháp: MATCH(lookup_value, lookup_array, match_type)
  • Mô tả: Tìm vị trí của một giá trị trong mảng. Hữu ích khi kết hợp INDEX.

1.8 Hàm LOOKUP

  • Cú pháp: LOOKUP(lookup_value, lookup_vector, result_vector)
  • Mô tả: Tìm kiếm giá trị trong mảng và trả về giá trị tương ứng. Tương tự VLOOKUP nhưng không yêu cầu cột khóa phải ở bên trái.

2. Khi Nào Dùng Mỗi Hàm?

HàmKhi Nào DùngLợi ÍchNhược Điểm
VLOOKUPDữ liệu tĩnh, cột khóa ở bên tráiĐơn giản, nhanhGiới hạn vị trí cột
HLOOKUPDữ liệu ngang, hàng khóa ở trênĐơn giảnÍt dùng hơn
XLOOKUPTất cả trường hợpLinh hoạt, tính năng mớiCần Excel 365/2026 trở lên
INDEX+MATCHDữ liệu phức tạp, cần tìm nhiều tiêu chíLinh hoạt, không bị giới hạnCú pháp phức tạp
CHOOSEChọn cột độngĐơn giảnÍt phổ biến
OFFSETDữ liệu động, bảng thay đổi kích thướcĐộngĐộ phức tạp gawin và thiếu hiệu quả
MATCHTìm vị tríĐơn giảnKhông trả về giá trị
LOOKUPDữ liệu chưa sắp xếpĐơn giảnthem limit

3. Hướng Dẫn Chi Tiết: Cách Sử Dụng Mỗi Hàm

3.1 VLOOKUP

3.1.1 Cú pháp

=VLOOKUP(lookup_value, table_array, col_index_num, range_lookup)
  • lookup_value: Giá trị cần tìm.
  • table_array: Phạm vi bảng (đảm bảo cột khóa là cột đầu tiên).
  • col_index_num: Số thứ tự cột trong table_array trả về giá trị.
  • range_lookup: TRUE (tìm kiếm gần nhất) hoặc FALSE (tìm kiếm chính xác). Mặc định TRUE.

3.1.2 Ví dụ

Giả sử bạn có bảng:

A (Mã)B (Tên)C (Giá)
выApple100
002Banana50
003Orange70

Bạn muốn tìm giá của mã 002:

=VLOOKUP("002", A1:C4, 3, FALSE)

Kết quả: 50.

3.1.3 Lưu ý

  • Đ bắt buộc cột khóa phải ở cột đầu tiên của table_array. Nếu không, sử dụng INDEX+MATCH hoặc XLOOKUP.
  • Khi range_lookup = TRUE, dữ liệu cần được sắp xếp tăng dần. Nếu không, kết quả sai.

3.2 HLOOKUP

3.2.1 Cú pháp

=HLOOKUP(lookup_value, table_array, row_index_num, range_lookup)
  • Tương tự VLOOKUP nhưng áp dụng cho hàng đầu tiên.

3.2.2 Ví dụ

ABC
1Năm20262026
2Doanh thu5000060000

Tìm doanh thu 2026:

=HLOOKUP(2026, A1:C2, 2, FALSE)

Kết quả: 60000.

3.3 XLOOKUP

3.3.1 Cú pháp

=XLOOKUP(lookup_value, lookup_array, return_array, if_not_found, match_mode, search_mode)
  • lookup_value: Giá trị cần tìm.
  • lookup_array: Dải giá trị tìm kiếm.
  • return_array: Dải giá trị trả về.
  • if_not_found: Giá trị trả về nếu không tìm thấy.
  • match_mode: 0 (chính xác), -1 (gần nhất nhỏ hơn), 1 (gần nhất lớn hơn).
  • search_mode: 1 (tìm kiếm từ đầu), -1 (từ cuối).

3.3.2 Ví dụ

Tìm giá của mã 002 trong bảng như trên:

=XLOOKUP("002", A2:A4, C2:C4, "Không tìm thấy")

Kết quả: 50.

3.3.3 Tính năng đặc biệt

  • Tìm kiếm ngược: XLOOKUP("001", A2:A4, C2:C4, , -1, -1) sẽ trả về giá trị gần nhất từ cuối dãy.
  • Kết hợp nhiều tiêu chí: XLOOKUP("001" & "2026", A2:A4 & D2:D4, C2:C4, "Không tìm thấy") (sử dụng mảng kết hợp).

3.4 INDEX + MATCH

3.4.1 Cú pháp

=INDEX(return_array, MATCH(lookup_value, lookup_array, 0))
``াল - `return_array`: Dải giá trị trả về.
- `lookup_value`: Giá trị cần tìm.
- `lookup_array`: Dải giá trị tìm kiếm.
- `0` = tìm kiếm chính xác. #### 3.4.2 Ví dụ Tìm giá của mã `002`: ```excel
=INDEX(C2:C4, MATCH("002", A2:A4, 0))

Kết quả: 50.

3.4.3 Lợi ích

  • MATCH có thể tìm kiếm trong cột bất Alicia.
  • Không bị giới hạn bởi vị trí cột khóa.
  • Có thể kết hợp nhiều tiêu chí: MATCH(1, (A2:A4="002")(B2:B4="Banana"), 0).

3.5 CHOOSE

3.5.1 Cú pháp

=CHOOSE(index_num, value1, value2, ...)
  • index_num: Chỉ số (bắt đầu từ 1).
  • value1, value2, ...: Danh sách giá trị.

3.5.2 Ví dụ

Chọn cột tùy theo lựa chọn:

=INDEX(CHOOSE({1,2,3}, A2:A4, B2:B4, C2:C4), ROW())

Kết quả: Trả về giá trị tương ứng với cột được chọn.

3.6 OFFSET

3.6.1 Cú pháp

=OFFSET(reference, rows, cols, height, width)
  • reference: Ô tham chiếu.
  • rows: Số hàng dịch chuyển.
  • cols: Số cột dịch chuyển.
  • height, width: Kích thước vùng (tùy chọn).

3.6.2 Ví dụ

Giả sử bạn muốn lấy giá trị кіу ô B2 theo cách di chuyển từ A1:

=OFFSET(A1, 1, 1)

Kết quả: Giá trị tại B2.

3.6.3 Ứng dụng

  • Tạo bảng động: =OFFSET($A$1, 0, 0, COUNTA($A:$A), 3) trả về vùng dữ liệu tự động mở rộng theo số hàng.

3.7 MATCH

3.7.1 Cú pháp

=MATCH(lookup_value, lookup_array, match_type)
  • lookup_value: Giá trị cần tìm.
  • lookup_array: Dải tìm kiếm.
  • match_type: 0 (chính xác), 1 (gần nhất lớn hơn), -1 (gần nhất nhỏ hơn).

3.7.2 Ví dụ

Tìm vị trí của mã 002:

=MATCH("002", A2:A4, 0)

Kết quả: 2 (vị tríショップ).

3.8 LOOKUP

3.8.1 Cú pháp

godine:

=LOOKUP(lookup_value, lookup_vector, result_vector)
  • lookup_value: Giá trị cần tìm.
  • lookup_vector: Dải tìm kiếm.
  • result_vector: Dải trả về (nếu bị thiếu, trả về từ lookup_vector).

3.8.2 Ví dụ

Tìm giá của mã 002:

=LOOKUP("002", A2:A4, C Finger)

Kết quả: 50.

4. Kỹ Thuật Nâng Cao: Tìm Kiếm Nhiều Tiêu Chí

Cách Sử Dụng Các Hàm Tìm Kiếm Trong Excel
Cách Sử Dụng Các Hàm Tìm Kiếm Trong Excel

4.1 Sử Dụng INDEX + MATCH Đa Tiêu Chí

Công thức: =INDEX(return_array, MATCH(1, (criteria1)(criteria2)..., 0))

  • Giải thích: MATCH(1, ...) tìm vị trí trong đó tất cả các điều kiện đều đúng (được biểu thị bởi tích các biểu thức TRUE/FALSE).
  • Ví dụ:
  • Bảng:
A (Mã)B (Nhóm)C (Giá)
001A100
002B50
003A70
004B80
  • Tìm giá của mã 003 trong nhóm A:
=INDEX(C2:C5, MATCH(1, (A2:A5="003")(B2:B5="A"), 0))
  • Kết quả: 70.

Lưu ý: Khi nhập công thức, cần nhấn Ctrl+Shift+Enter (với Excel 2026 trở xuống) để tạo công thức mảng.

4.2 Tìm Kiếm Nhiều Giá Trị Trong Một Bảng

Đôi khi bạn muốn tìm giá trị trong một bảng có nhiều cột khóa. Giả sử bạn có bảng:

ABCD
1X10100
2Y20200
3Z30300

Bạn muốn tìm giá trị trong cộtทัน D khi A=2 và B=Y.

Sử dụng INDEX + MATCH:

=INDEX(D2:D4, MATCH(1, (A2:A4=2)(B2:B4="Y"), 0))

Kết quả: 200.

5. Các Mẹo Thường Gặp và Cách Khắc Phục

5.1 Kết Quả Rỗng (#N/A)

  • Nguyên nhân: Giá trị tìm kiếm không tồn tại.
  • Giải pháp: Sử dụng IFERROR hoặc IFNA.
=IFERROR(VLOOKUP("001", A2:C5, 3, FALSE), "Không tìm thấy")

5.2 Lỗi Định Dạng

  • Nguyên nhân: Dữ liệu trong cột khóa có định dạng khác nhau (ví dụ: số dạng văn bản vs số thực).
  • Giải pháp: Đổi định dạng, hoặc dùng VALUE/TEXT để chuẩn hóa.
=VLOOKUP(VALUE("001"), A2:C5, 3, FALSE)

5.3 Trả Về Giá Trị Gần Nhất Khi Dữ Liệu Không Sắp Xếp

  • Nguyên nhân: range_lookup = TRUE nhưng dữ liệu chưa được sắp xếp.
  • Giải pháp: Đặt range_lookup = FALSE hoặc sắp xếp dữ liệu.
=VLOOKUP("001", A2:C5, 3, FALSE)

5.4 Vấn Đề Hiệu Năng Khi Bảng Lớn

  • Nguyên nhân: OFFSET và INDIRECT làm chậm khi có hàng nghìn.
  • Giải pháp: Dùng INDEX + MATCH hoặc XLOOKUP vì chúng nhanh hơn.

5.5 Sử Dụng XLOOKUP Để Tránh Lỗi

  • XLOOKUP cung cấp tham số if_not_found để tránh lỗi #N/A.
  • Nếu cần tìm kiếm gần Department, dùng match_mode = -1 hoặc 1.

6. Ứng Dụng Thực Tế: Các Kịch Bản Thường Gặp

6.1 Kiểm Tra Đối Tác

Bạn có danh sách khách hàng (ID, Tên, Số Điện Thoại). Bạn muốn kiểm tra xem một số điện thoại có tồn tại trong danh sách không, và trả về tên khách hàng.

  • Cách: XLOOKUP với IFERROR.
=IFERROR(XLOOKUP(PhoneNumber, PhoneRange, NameRange, "Không tìm thấy"), "Không tìm thấy")

6.2 Tính Thuế Tự Động

Bảng có=false:

| A | B | generous |

| 1 | Thuế suất | 5% |
| 2 | Thuế suất | 10% |
| 3 | Thuế suất | 15% |

Bạn muốn tính thuế theo mức thu nhập. Sử dụng VLOOKUP với range_lookup=TRUE để tìm mức thuế gần nhất.

=Income VLOOKUP(Income, TaxRange, 2, TRUE)

6.3(Mockito) Phân Tích Doanh Thu Theo Ngày

Giả sử bạn có bảng bán hàng:

A (Ngày)B (Số Lượng)C (Giá)
2026-01-011015
2026-01-02515
2026-01-01718

Bạn muốn tính tổng doanh thu cho ngày 2026-01-01.

  • Cách: SUMPRODUCT kết hợp IF.
=SUMPRODUCT((A2:A5="2026-01-01")(B2:B5C2:C5))

7. Tài Nguyên Hữu Ích

Tài NguyênMô TảLiên Kết
Microsoft Support – VLOOKUPHướng dẫn chính thức.https://support.microsoft.com/
Excel Easy – XLOOKUPGiải thích chi tiết.https://excelek.com/xlookup/
MrExcel ForumCộng đồng hỗ trợ.https://www.mrexcel.com/
Chuyên đềերն ExcelVideo hướng dẫn.https://www.youtube.com/excel

8. Kết Luận

Việc tìm kiếm và trích xuất dữ liệu trong Excel không chỉ là một kỹ năng cơ bản mà còn là chìa khóa giúp bạn quản lý dữ liệu nhanh chóng, chính xác và linh hoạt. Từ VLOOKUP đơn giản cho đến XLOOKUP hiện đại, từ INDEX+MATCH linh hoạt đến OFFSET và CHOOSE cho các trường hợp đặc biệt, mỗi hàm đều có ưu điểm và hạn chế riêng. Bạn cần biết khi nào áp dụng hàm nào, và làm sao để tránh những lỗi phổ biến như #N/A, lỗi định dạng, hoặc hiệu năng chậm.

Bên cạnh đó, việc kết hợp các hàm tìm kiếm với các công thức nâng cao (ví dụ IF, SUMPRODUCT, INDEX+MATCH đa tiêu chí) sẽ mở ra rất nhiều Mukama.

Hãy thử áp dụng các ví dụ trên vào bảng dữ liệu của bạn, và bạn sẽ nhanh chóng cảm nhận được sức mạnh của Excel trong việc xử lý dữ liệu. Nếu bạn gặp bất kỳ vấn đề nào, hãy tham khảo các tài nguyên trên, hoặc tham gia cộng đồng Excel để nhận được sự hỗ trợ nhanh chóng. Happy Excel!

⚠️
LƯU Ý QUAN TRỌNG: Miễn trừ trách nhiệm: Mặc dù chúng tôi luôn nỗ lực để đảm bảo tính chính xác và cập nhật của thông tin, nhưng các quy định về giáo dục và tuyển sinh có thể thay đổi theo thời gian. BigSchool không chịu trách nhiệm về bất kỳ sai sót nào hoặc kết quả phát sinh từ việc sử dụng thông tin trên trang này. Độc giả nên liên hệ trực tiếp với nhà trường hoặc cơ quan chức năng để có thông tin mới nhất. Ngoài ra, BigSchool tuyệt đối không bán sản phẩm, khóa học hay cung cấp dịch vụ được nhắc đến trong bài.

Viết một bình luận