Chà, hôm vừa rồi @songcham có một bài viết hỏi về Vlookup. Nếu như lúc đó mình hiểu logic của hàm này thì sẽ code được. Vì không sẵn thời gian nên mình cũng không tìm hiểu. Vậy, hôm nay rảnh rỗi, tìm hiểu về Vlookup. Đây là hàm quen thuộc với những người quen sử dụng các hàm có sẵn của Excel. Vì vậy, việc tìm kiếm trên google cũng không khó khăn gì. Các bài viết cũng rất dễ hiểu.
Cú pháp của Vlookup:
Vlookup(giá_trị_cần_tìm_kiếm,vùng_cần_tìm_kiếm,Vị_trí_cột_lấy_giá_trị_trả_về,kiểu_tìm_kiếm)
Ở ví dụ trên:
Giá trị cần tìm kiếm là [G3] = 10.
Vùng cần tìm kiếm: [B3 : D18]
Như vậy kết quả tìm kiếm sẽ ra được dòng 12 là dòng có giá trị = 10. Tuy nhiên, bây giờ kết quả trả về là lấy Tên hay lấy Tỉnh?
Thông số tiếp theo, trong công thức trên đã dùng là 3, tức là lấy vị trí cột thứ 3 trong vùng tìm kiếm [B3 : D18], có nghĩa là chúng ta sẽ lấy Tỉnh.
Tiếp theo là kiểu tìm kiếm: TRUE là chúng ta tìm kiếm gần đúng. FALSE là tìm chính xác.
Ở ví dụ trên, nó ra kết quả thể hiện ở [H3] là Sóc Trăng (dòng 15), mình cứ tưởng nó phải ra Nam Định (dòng 4). Như vậy là nó đã tìm gần đúng, dù không có ai tên là Thanh thì nó vẫn trả về kết quả.
Nhưng thực tế mọi người hay dùng False. Tức là tìm chính xác. Nếu không tìm ra, nó sẽ trả kết quả là lỗi.
Không thấy ai nói gì, nhưng mình thấy, mặc định giá trị cần tìm kiếm sẽ được tìm kiếm ở cột đầu tiên trong vùng tìm kiếm.
Ta thử đổi vị trí cột đi, xem nó còn tìm thấy tên nữa không nhé:
Khi tôi di chuyển cột tên sang cột thứ hai của vùng tìm kiếm. Kết quả của Vlookup đã ra lỗi, không tìm kiếm thấy.
Bây giờ chúng ta không muốn hiển thị lỗi #N/A như trên nữa, vậy chúng ta sẽ sử dụng hàm IFERROR.
IFERROR(hàm,giá_trị_trong_trường_hợp_lỗi)
Bây giờ ta thử lại kết quả trên nhé:
Thay vì hiển thị lỗi #N/A, bây giờ nó đã hiển thị nội dung như trên. Tức là nếu có lỗi xảy ra do không tìm kiếm thấy, thì nó sẽ trả về kết quả mà ta fix ở trong công thức như trên.
Trước hết, diễn đàn trình bày về Vlookup trong excel, nếu bài viết trên có sai sót gì, các bạn phản hồi nhé.
Trong bài viết sau, mình sẽ trình bày về Vlookup với VBA.
Video thuyết minh:
Bạn cần đăng nhập để thấy đính kèm
Cú pháp của Vlookup:
Vlookup(giá_trị_cần_tìm_kiếm,vùng_cần_tìm_kiếm,Vị_trí_cột_lấy_giá_trị_trả_về,kiểu_tìm_kiếm)
Ở ví dụ trên:
Giá trị cần tìm kiếm là [G3] = 10.
Vùng cần tìm kiếm: [B3 : D18]
Như vậy kết quả tìm kiếm sẽ ra được dòng 12 là dòng có giá trị = 10. Tuy nhiên, bây giờ kết quả trả về là lấy Tên hay lấy Tỉnh?
Thông số tiếp theo, trong công thức trên đã dùng là 3, tức là lấy vị trí cột thứ 3 trong vùng tìm kiếm [B3 : D18], có nghĩa là chúng ta sẽ lấy Tỉnh.
Tiếp theo là kiểu tìm kiếm: TRUE là chúng ta tìm kiếm gần đúng. FALSE là tìm chính xác.
Bạn cần đăng nhập để thấy đính kèm
Ở ví dụ trên, nó ra kết quả thể hiện ở [H3] là Sóc Trăng (dòng 15), mình cứ tưởng nó phải ra Nam Định (dòng 4). Như vậy là nó đã tìm gần đúng, dù không có ai tên là Thanh thì nó vẫn trả về kết quả.
Nhưng thực tế mọi người hay dùng False. Tức là tìm chính xác. Nếu không tìm ra, nó sẽ trả kết quả là lỗi.
Bạn cần đăng nhập để thấy đính kèm
Không thấy ai nói gì, nhưng mình thấy, mặc định giá trị cần tìm kiếm sẽ được tìm kiếm ở cột đầu tiên trong vùng tìm kiếm.
Bạn cần đăng nhập để thấy đính kèm
Ta thử đổi vị trí cột đi, xem nó còn tìm thấy tên nữa không nhé:
Bạn cần đăng nhập để thấy đính kèm
Khi tôi di chuyển cột tên sang cột thứ hai của vùng tìm kiếm. Kết quả của Vlookup đã ra lỗi, không tìm kiếm thấy.
Bây giờ chúng ta không muốn hiển thị lỗi #N/A như trên nữa, vậy chúng ta sẽ sử dụng hàm IFERROR.
IFERROR(hàm,giá_trị_trong_trường_hợp_lỗi)
Bây giờ ta thử lại kết quả trên nhé:
Bạn cần đăng nhập để thấy đính kèm
Thay vì hiển thị lỗi #N/A, bây giờ nó đã hiển thị nội dung như trên. Tức là nếu có lỗi xảy ra do không tìm kiếm thấy, thì nó sẽ trả về kết quả mà ta fix ở trong công thức như trên.
Trước hết, diễn đàn trình bày về Vlookup trong excel, nếu bài viết trên có sai sót gì, các bạn phản hồi nhé.
Trong bài viết sau, mình sẽ trình bày về Vlookup với VBA.
Video thuyết minh:
Bạn cần đăng nhập để thấy đa phương tiện