Ứng dụng

Hàm VLOOKUP cách sử dụng và ví dụ cụ thể

VLOOKUP là một trong những hàm Excel hữu ích nhất nhưng lại ít người hiểu về nó. Trong bài viết này, chúng tôi sẽ giúp các bạn hiểu rõ về hàm VLOOKUP bằng các ví dụ thực tế, như xếp loại học sinh, nhân viên bằng cách dùng hàm VLOOKUP.

Hàm VLOOKUP là gì?

Hàm VLOOKUP là hàm dò tìm dữ liệu trong Excel. Tôi giả định rằng bạn đã có kiến thức nền về Excel và có thể sử dụng những hàm cơ bản như SUM, AVERAGE, và TODAY. Một trong những chức năng thông dụng nhất của VLOOKUP là một hàm dữ liệu, nghĩa là nó sẽ hoạt động dựa trên những bảng cơ sở dữ liệu hoặc đơn giản hơn là danh sách các hạng mục. Danh sách có rất nhiều loại. Bạn có thể lập bảng về nhân sự trong công ty, các loại mặt hàng sản phẩm, danh sách khách hàng, hoặc bất kỳ cái gì cũng được. Và dưới đây là danh sách những sản phẩm của công ty A đang bán trên thị trường:

Bạn đang xem bài: Hàm VLOOKUP cách sử dụng và ví dụ cụ thể

Bảng cơ sở dữ liệu thường có những dấu hiệu nhận biết cho từng sản phẩm. Ở bảng dữ liệu trên, dấu hiệu nhận biết đặc biệt là cột “Item Code” (Mã sản phẩm). Chú ý: Để có thể sử dụng hàm VLOOKUP thì bảng dữ liệu phải có cột chứa dấu hiệu nhận biết như mã hoặc ID, và buộc phải là cột đầu tiên như bảng trên.

VLOOKUP có lẽ là hàm nổi tiếng nhất trong Excel, nhưng vì cả lý do tốt và xấu. Về mặt tốt, hàm VLOOKUP rất dễ sử dụng và làm được điều gì đó rất hữu ích. Đặc biệt, đối với những người dùng mới, việc xem hàm VLOOKUP quét bảng, tìm một kết quả phù hợp và trả về một kết quả chính xác là điều vô cùng thích thú. Sử dụng thành thạo hàm VLOOKUP là một kỹ năng cần thiết, từ người mới bắt đầu đến người dùng Excel thành thạo.

Về mặt tiêu cực, hàm VLOOKUP bị giới hạn và có các giá trị mặc định nguy hiểm. Không giống như INDEX và MATCH (hoặc XLOOKUP), hàm VLOOKUP cần một bảng hoàn chỉnh với các giá trị tra cứu trong cột đầu tiên. Điều này làm cho việc sử dụng hàm VLOOKUP với nhiều tiêu chí trở nên khó khăn. Ngoài ra, hành vi đối sánh mặc định của VLOOKUP khiến bạn dễ dàng nhận được kết quả không chính xác. Nhưng đừng quá lo lắng! Chìa khóa để sử dụng thành công hàm VLOOKUP là nắm vững các kiến thức cơ bản.

VLOOKUP có 4 đối số: lookup_value, table_array, column_index_num và range_lookup. Lookup_value là giá trị cần tìm và table_array là phạm vi dữ liệu dọc cần tìm bên trong. Cột đầu tiên của table_array phải chứa các giá trị tra cứu để tìm kiếm. Đối số column_index_num là số cột của giá trị cần truy xuất, trong đó cột đầu tiên của table_array là cột 1.

Cuối cùng, range_lookup điều khiển hành vi tìm giá trị khớp. Nếu range_lookup là TRUE, thì hàm VLOOKUP sẽ thực hiện đối sánh gần đúng. Nếu range_lookup là FALSE, thì hàm VLOOKUP sẽ thực hiện đối sánh chính xác. Quan trọng, range_lookup là tùy chọn và được đặt mặc định là TRUE, do đó, VLOOKUP sẽ thực hiện so khớp gần đúng theo mặc định.

Công thức của hàm VLOOKUP trong Excel

Hàm VLOOKUP trong Excel có công thức như sau:

=VLOOKUP(lookup_value,table_array,col_index_num,[range_lookup])

Trong đó:

  • VLOOKUP: Là tên hàm
  • Các tham số in đậm bắt buộc phải có.
  • lookup_value: Giá trị dùng để dò tìm
  • table_array: Bảng chứa giá trị cần dò tìm, để ở dạng giá trị tuyệt đối với dấu $ đằng trước, ví dụ: $A$3:$E$40.
  • col_index_num: Thứ tự của cột chứa giá trị dò tìm trên table_array. Ví dụ trong bảng $A$3:$E$40, cột B chứa giá trị cần dò tìm thì col_index_num ở đây sẽ là 2; bảng $C$3:$F$40, cột E chứa giá trị dò tìm, thì col_index_num ở đây là 3.
  • range_lookup: Là phạm vi tìm kiếm, TRUE tương đương với 1 (dò tìm tương đối), FALSE tương đương với 0 (dò tìm tuyệt đối). Tham số này không bắt buộc phải luôn có trong công thức.

Dò tìm tương đối chỉ có thể áp dụng khi giá trị cần dò tìm trong table_array đã được sắp xếp theo thứ tự (tăng dần hoặc giảm dần hay theo bảng chữ cái). Với những bảng như vậy bạn có thể dùng dò tìm tương đối, khi đó nó tương tự như dùng hàm IF vô hạn vậy. Đối với các giá trị cần dò tìm không thể hoặc chưa được sắp xếp hãy dùng dò tìm tuyệt đối để tìm chính xác giá trị.

Video hướng dẫn dùng hàm VLOOKUP

VD1: Hàm VLOOKUP để đánh giá xếp loại của học sinh, nhân viên

Giả sử, bạn có bảng điểm học sinh như sau:

STT Họ và tên Điểm TB Xếp loại
1 Nguyễn Hoàng Anh 9.1
2 Trần Vân Anh 8.3
3 Nguyễn Quanh Vinh 9.5
4 Trần Hồng Quang 8.6
5 Đỗ Thanh Hoa 5.0
6 Lê Hồng Ngọc 4.5
7 Đoàn Thanh Vân 7.2
8 Ngô Ngọc Bích 0.0
9 Hoàng Thu Thảo 6.6
10 Đinh Minh Đức 8.7

Và bảng quy định xếp loại như sau:

Quy định xếp loại
0 Yếu
5.5 Trung bình
7 Khá
8.5 Giỏi

Giờ ta sẽ sử dụng hàm VLOOKUP để nhập xếp loại cho các học sinh. Bạn để ý thấy rằng bảng quy định xếp loại đã được sắp xếp theo thứ tự từ thấp đến cao (từ yếu đến giỏi) nên trong trường hợp này ta có thể dùng dò tìm tương đối.

Trong Excel 2 bảng này được trình bày như sau:

Ở đây, giá trị cần dò tìm nằm ở cột C, bắt đầu từ dòng thứ 6. Phạm vi tìm kiếm là $A$18:$B$21, thứ tự cột chứa giá trị dò tìm là 2.

Tại ô D6, bạn nhập vào công thức: =VLOOKUP($C6,$A$18:$B$21,2,1). Đây là công thức dò tìm tương đối, bạn có thể thực hiện dò tìm tuyệt đối nếu muốn (hoặc do bảng xếp loại chưa được sắp xếp theo thứ tự) bằng cách thêm 0 vào công thức như thế này: =VLOOKUP($C6,$A$18:$B$21,2,0). Nhấn Enter.

Nhấp chuột vào ô D6, xuất hiện ô vuông nhỏ ở góc dưới bên phải, bạn nhấp chuột vào đó và kéo dọc xuống hết bảng để sao chép công thức xếp loại cho những học sinh còn lại.

Khi đó, ta có kết quả dùng hàm VLOOKUP để xếp loại học lực học sinh như sau:

Bạn có thắc mắc tại sao phải sử dụng $ trước C6 không? $ sẽ giúp cố định cột C, chỉ thay đổi các hàng khi bạn kéo công thức xuống toàn bảng. Còn $A$18:$B$21 để giúp cố định bảng quy định xếp loại, khiến nó không bị thay đổi khi bạn kéo công thức.

VD2: Hàm VLOOKUP dò tìm tuyệt đối để lấy dữ liệu

Giả sử, bạn có một bảng dữ liệu nhân viên, lưu trữ mã nhân viên, họ tên, chức vụ. Một bảng khác lưu trữ mã nhân viên, quê quán, trình độ học vấn. Giờ bạn muốn điền thông tin quê quán, trình độ học vấn cho từng nhân viên thì phải làm như thế nào?

Giả sử bạn có bảng nhân viên và quê quán nhân viên như sau:

Giờ bạn muốn điền thông tin quê quán cho nhân viên. Tại ô D4, bạn nhập vào công thức dò tìm tuyệt đối như sau: =Vlookup($A4,$A$16:$C$25,2,0)

Rồi nhấn Enter. Nhấp vào ô vuông nhỏ xuất hiện dưới góc ô D4 và kéo xuống toàn bảng để sao chép công thức cho các nhân viên khác.

Để điền thông tin trình độ cho các nhân viên, tại ô E4 bạn nhập vào công thức dò tìm tuyệt đối: =VLOOKUP($A4,$A$16:$C$25,3,0)

Bạn tiếp tục nhấn Enter và kéo xuống để sao chép công thức cho những nhân viên còn lại, ta sẽ được kết quả như sau:

VD3: Dùng VLOOKUP để trích xuất dữ liệu

Tiếp tục với bộ dữ liệu của ví dụ 2, giờ ta sẽ đi tìm quê quán của 3 nhân viên là Nguyễn Hoàng Anh, Trần Vân Anh và Nguyễn Quang Vinh. Mình đã trích xuất ra thành một bảng mới F15:G18.

Việc dò tìm này mình sẽ thực hiện trên bảng A3:E13, sau khi đã được điền quê quán và trình độ. Lúc này, bạn nhập công thức dò tìm tuyệt đối sau vào ô G16: =VLOOKUP($F16,$B$3:$E$13,3,0) > nhấn Enter.

Sao chép công thức cho 2 nhân viên còn lại ta được kết quả như sau:

Lưu ý trong ví dụ này, giá trị dò tìm nằm ở cột B, vì thế vùng dò tìm ta tính từ cột B mà không tính từ cột A.

VD4: Dùng hàm VLOOKUP trên 2 sheet Excel khác nhau

Quay lại với bộ dữ liệu ở ví dụ 2 sau khi nhân viên được điền xong trình độ và quê quán, ta đặt tên cho sheet là QTM.

Ở một sheet khác của bảng tính, đặt tên là QTM1, bạn cần lấy thông tin về trình độ và chức vụ của nhân viên với thứ tự sắp xếp của nhân viên đã thay đổi. Đây mới là lúc bạn thấy được sức mạnh thực sự của hàm VLOOKUP.

Để dò tìm dữ liệu về “Trình độ” của nhân viên, bạn nhập công thức: =VLOOKUP($B4,QTM!$B$3:$E$13,4,0) vào ô C4 của sheet QTM1.

Trong đó:

  • B4 là cột chứa giá trị dùng để dò tìm.
  • QTM! là tên sheet chứa bảng có giá trị cần dò tìm, sau tên sheet bạn thêm dấu !
  • $B$3:$E$13 là bảng chứa giá trị dò tìm và sheet chứa bảng (QTM).
  • 4 là số thứ tự của cột “Trình độ”, tính từ cột “Họ và tên” trên sheet QTM.
  • 0 là dò tìm tuyệt đối.

Nhấn Enter, rồi sao chép công thức cho toàn bộ nhân viên còn lại trong bảng, ta được kết quả như sau:

Để dò tìm dữ liệu “Chức vụ” của nhân viên, tại ô D4 của sheet QTM1, bạn nhập vào công thức: =VLOOKUP($B4,QTM!$B$3:$E$13,2,0), nhấn Enter.

Sao chép công thức cho các nhân viên còn lại, ta được như sau:

Sử dụng hàm VLOOKUP để làm gì?

Trước tiên chúng ta cần tìm câu trả lời chính xác cho câu hỏi “chúng ta sử dụng hàm VLOOKUP để làm gì?”.

Hàm VLOOKUP được sử dụng để hỗ trợ tra cứu thông tin trong một trường dữ liệu hoặc danh sách dựa vào những mã định danh có sẵn.

Ví dụ, chèn hàm VLOOKUP kèm theo mã sản phẩm vào một bảng tính khác, nó sẽ hiển thị thông tin của sản phẩm tương ứng với mã đó. Những thông tin đó có thể là mô tả, giá thành, số lượng tồn kho, tùy theo nội dung công thức mà bạn viết.

Lượng thông tin cần tìm càng nhỏ thì khi viết hàm VLOOKUP sẽ càng khó khăn hơn. Thông thường bạn sẽ sử dụng hàm này vào một bảng tính tái sử dụng như mẫu. Mỗi lần nhập mã sản phẩm thích hợp, hệ thống sẽ truy xuất tất cả những thông tin cần thiết về sản phẩm tương ứng.

Những điều cần nhớ về hàm VLOOKUP

Dưới đây là danh sách những điều quan trọng cần nhớ về hàm VLOOKUP trong Excel:

  • Khi range_lookup bị bỏ qua, hàm VLOOKUP sẽ cho phép đối sánh không chính xác, nhưng vẫn sẽ sử dụng đối sánh chính xác nếu có.
  • Hạn chế lớn nhất của hàm là nó luôn lấy giá trị bên phải. Hàm sẽ lấy dữ liệu từ các cột bên phải cột đầu tiên trong bảng.
  • Nếu cột tra cứu chứa các giá trị trùng lặp, hàm VLOOKUP sẽ chỉ khớp giá trị đầu tiên.
  • Hàm không phân biệt chữ hoa chữ thường.
  • Giả sử có một công thức VLOOKUP hiện có trong một trang tính. Trong trường hợp đó, các công thức có thể bị hỏng nếu bạn chèn một cột vào bảng, bởi vì các giá trị chỉ mục cột được mã hóa cứng, không tự động thay đổi khi các cột được chèn hoặc xóa.
  • VLOOKUP cho phép sử dụng các ký tự đại diện, ví dụ, dấu hoa thị (*) hoặc dấu chấm hỏi (?).
  • Giả sử trong bảng bạn đang làm việc với hàm chứa các số được nhập dưới dạng văn bản. Nếu chỉ lấy số dưới dạng văn bản từ một cột trong bảng, thì điều đó không thành vấn đề. Nhưng nếu cột đầu tiên của bảng chứa các số được nhập dưới dạng văn bản, lỗi #N/A! sẽ hiển thị nếu giá trị tra cứu cũng không ở dạng văn bản.
  • Lỗi #N/A! xảy ra nếu hàm VLOOKUP không tìm thấy kết quả phù hợp với giá trị lookup_value đã cung cấp.
  • Lỗi #REF! xảy ra nếu:
    • Đối số col_index_num lớn hơn số cột trong table_array được cung cấp
    • Công thức đã cố gắng tham chiếu đến các ô không tồn tại.
  • Lỗi #VALUE! xảy ra nếu:
    • Đối số col_index_num nhỏ hơn 1 hoặc không được công nhận là giá trị số
    • Đối số range_lookup không được nhận dạng là một trong các giá trị logic TRUE hoặc FALSE.

Xem thêm:

Trích nguồn: Trung tâm Lý luận chính trị
Danh mục: Ứng dụng

Trả lời

Email của bạn sẽ không được hiển thị công khai.

Back to top button