Thắc mắc: Hạn chế của hàm Vlookup khi tham chiếu dữ liệu trùng

Liên hệ QC

xuongrongdat

Có bao giờ bạn tự hỏi "Tôi là ai?"
Tham gia
30/6/08
Bài viết
1,704
Được thích
1,572
Donate (Momo)
Donate
Nghề nghiệp
Vô tư cùng bạn bè đi khắp nơi.
Mọi người cho mình hỏi trường hợp sau, tại ô E3 nếu mình vẫn muốn dùng Vlookup thì làm sao để cho nó ra đúng kết quả được ạ?
Với ngoài Vlookup và Sumif ra thì còn cách nào khác gọn bằng hoặc gọn hơn không?
1603942318851.png

Mặc dù chỉ là minh họa nhưng đây là trường hợp thực tế. Nguyễn Văn A là người lập Bảng lương cho toàn công ty nên bị vướng tình huống trên.
Xin cảm ơn.
 

File đính kèm

  • GPE141.xlsx
    9 KB · Đọc: 18
Mình mới kể chuyện thôi, chưa thấy đề bài là gì á. :)
 
Mình mới kể chuyện thôi, chưa thấy đề bài là gì á. :)
Úy có đề bài, có câu hỏi đàng hoàng mà ta:
tại ô E3 nếu mình vẫn muốn dùng Vlookup thì làm sao để cho nó ra đúng kết quả được ạ? Kết quả đúng là 1.000.000 á
Với ngoài Vlookup và Sumif ra thì còn cách nào khác gọn bằng hoặc gọn hơn không?

Đề bài xong hết rồi bác ơi.
 
Úy có đề bài, có câu hỏi đàng hoàng mà ta:
tại ô E3 nếu mình vẫn muốn dùng Vlookup thì làm sao để cho nó ra đúng kết quả được ạ? Kết quả đúng là 1.000.000 á
Với ngoài Vlookup và Sumif ra thì còn cách nào khác gọn bằng hoặc gọn hơn không?

Đề bài xong hết rồi bác ơi.
Mình quên hết mấy hàm đó đi. Mình nêu bài toán:
Cho bảng dữ liệu ban đầu là gì, ở đâu?
Yêu cầu cần tính gì, làm gì? Kết quả để ở đâu.
 
Mọi người cho mình hỏi trường hợp sau, tại ô E3 nếu mình vẫn muốn dùng Vlookup thì làm sao để cho nó ra đúng kết quả được ạ?
Với ngoài Vlookup và Sumif ra thì còn cách nào khác gọn bằng hoặc gọn hơn không?
View attachment 248249

Mặc dù chỉ là minh họa nhưng đây là trường hợp thực tế. Nguyễn Văn A là người lập Bảng lương cho toàn công ty nên bị vướng tình huống trên.
Xin cảm ơn.
Dùng INDEX+MATCH => Kết quả là NGUYỄN VĂN A có tiền "Đầu tiên".

Dùng LOOKUP Kết quả là NGUYỄN VĂN A có tiền "Cuối cùng".
 
Mình quên hết mấy hàm đó đi. Mình nêu bài toán:
Cho bảng dữ liệu ban đầu là gì, ở đâu?
Yêu cầu cần tính gì, làm gì? Kết quả để ở đâu.
Con hỏi thiệt. Chỉ cần giải quyết bài #1 là được rồi bác. Chứ công việc thực tế con phải tường thuật dài lắm. Mà chung quy lại vấn đề nó chỉ có nhiêu đây hà.
 
Con hỏi thiệt. Chỉ cần giải quyết bài #1 là được rồi bác. Chứ công việc thực tế con phải tường thuật dài lắm. Mà chung quy lại vấn đề nó chỉ có nhiêu đây hà.
Không phải dài dòng, hay dài vô tận. Vấn đề là mình chưa trình bày được vấn đề. Thấy vướng vướng là lộn tung hết lên rồi.

Chỉ cần viết vầy là được:
Cho bảng dữ liệu ở cột A:B.
Tìm giá trị ở cột B theo tên ở cột A ứng với dòng có dữ liệu (nếu có nhiều hơn 1 dòng có dữ liệu thì lấy giá trị đầu/ cuối gì đó).

Chỉ đơn giản thế thôi. Mình lại đi nói hàm vlookup có nhược điểm. Hàm vlookup() chẳng có nhược điểm nào cả. Nhược điểm là người vận dụng hàm thôi.
 
Sắp xếp theo tên và số tiền (giảm dần) trước rồi mới vlookup
 
Tình huống thực tế mình gặp đây:
1603944504201.png

Cái ông tô vàng ổng lập nhiều biểu bên trên và bên dưới nữa, của các phòng ban, đơn vị khác trong công ty. Bị trùng cột B.
Xong cái mình qua sheet khác làm danh sách chuyển khoản tiền lương cho toàn công ty nên dò ngược sang sheet tính lương này. Dùng vlookup sẽ bị trùng tên cái ông tô vàng nên bị hiện thành 0, thay vì phải dò ra số tiền lương của ổng.

Thôi mình xài Sumif vậy. Tại muốn dùng Vlookup, hi. Cảm ơn mọi người nhiều.
 
Lần chỉnh sửa cuối:
Cái ông tô vàng ổng lập nhiều biểu bên dưới nữa, của các phòng ban, đơn vị khác trong công ty. Bị trùng cột B.
Đặt mã luôn và ngay đi thôi. Trên 01 người là đặt mã. Bởi ông tổng giám đốc và ông giám đốc đã trùng họ và tên rồi.
 
Đọc bài 1 tưởng dò tìm chính xác chữ hoa chữ thường @#$
 
Tình huống thực tế mình gặp đây:
View attachment 248255

Cái ông tô vàng ổng lập nhiều biểu bên trên và bên dưới nữa, của các phòng ban, đơn vị khác trong công ty. Bị trùng cột B.
Xong cái mình qua sheet khác làm danh sách chuyển khoản tiền lương cho toàn công ty nên dò ngược sang sheet tính lương này. Dùng vlookup sẽ bị trùng tên cái ông tô vàng nên bị hiện thành 0, thay vì phải dò ra số tiền lương của ổng.

Thôi mình xài Sumif vậy. Tại muốn dùng Vlookup, hi. Cảm ơn mọi người nhiều.
Nếu các tên trong bảng đều có số thứ tự, thì bạn thử thêm hàm if (nếu A >0, vlookup(ABC,.....), 0)
 
VLookup là hàm dò bảng. Bảng chuẩn thì mỗi từ khoá để lookup phải là duy nhất.
Riêng bài này, muốn tạm chuẩn hoá nó thì phải dùng hàm Choose hoặc tương tự để gộp cái từ khoá tên với cái con số ở cột kia (tức là "NGUYỄN VĂN A1000000")
Lúc tra, dùng wildcard, D3&"?*"
 
Tình huống thực tế mình gặp đây:
View attachment 248255

Cái ông tô vàng ổng lập nhiều biểu bên trên và bên dưới nữa, của các phòng ban, đơn vị khác trong công ty. Bị trùng cột B.
Xong cái mình qua sheet khác làm danh sách chuyển khoản tiền lương cho toàn công ty nên dò ngược sang sheet tính lương này. Dùng vlookup sẽ bị trùng tên cái ông tô vàng nên bị hiện thành 0, thay vì phải dò ra số tiền lương của ổng.

Thôi mình xài Sumif vậy. Tại muốn dùng Vlookup, hi. Cảm ơn mọi người nhiều.
Bỏ ký tự "V" thành Lookup
 
Mọi người cho mình hỏi trường hợp sau, tại ô E3 nếu mình vẫn muốn dùng Vlookup thì làm sao để cho nó ra đúng kết quả được ạ?
Với ngoài Vlookup và Sumif ra thì còn cách nào khác gọn bằng hoặc gọn hơn không?
View attachment 248249

Mặc dù chỉ là minh họa nhưng đây là trường hợp thực tế. Nguyễn Văn A là người lập Bảng lương cho toàn công ty nên bị vướng tình huống trên.
Xin cảm ơn.
Dùng MAX(IF... thì sao? Chẳng hạn:
Mã:
=MAX(IF($A$2:$A$10=D3,$B$2:$B$10,""))
Nếu tất cả các hàng đều có dữ liệu mà dùng SUMIF thì... coi chừng
 
Dùng INDEX+MATCH => Kết quả là NGUYỄN VĂN A có tiền "Đầu tiên".

Dùng LOOKUP Kết quả là NGUYỄN VĂN A có tiền "Cuối cùng".
Sao con làm Lookup hông có ra. Nó ra 0 quài.
VLookup là hàm dò bảng. Bảng chuẩn thì mỗi từ khoá để lookup phải là duy nhất.
Riêng bài này, muốn tạm chuẩn hoá nó thì phải dùng hàm Choose hoặc tương tự để gộp cái từ khoá tên với cái con số ở cột kia (tức là "NGUYỄN VĂN A1000000")
Lúc tra, dùng wildcard, D3&"?*"
Con chưa hiểu cách làm của bác.
Dùng MAX(IF... thì sao? Chẳng hạn:
Mã:
=MAX(IF($A$2:$A$10=D3,$B$2:$B$10,""))
Nếu tất cả các hàng đều có dữ liệu mà dùng SUMIF thì... coi chừng
Con làm Max If ra được kết quả đúng luôn rồi.
 
Web KT
Back
Top Bottom