Trả lại giá trị cho bên trái của hàm VLOOKUP (Microsoft Excel)
Sam sử dụng hàm VLOOKUP thường xuyên. Nó rất tiện dụng, nhưng có một hạn chế nghiêm trọng — tra cứu chỉ có thể tham chiếu đến các cột bên phải. Điều này có nghĩa là Sam không thể sử dụng, làm tham số thứ ba cho hàm VLOOKUP, một giá trị âm để tham chiếu cột bên trái. Anh ấy tự hỏi liệu có cách nào để giải quyết hạn chế này không.
Trên thực tế, có ba cách để giải quyết hạn chế này — tái cấu trúc, sử dụng INDEX và sử dụng CHOOSE. Tôi sẽ lần lượt xem xét từng phương pháp này.
_ Tái cấu trúc nội dung của bạn_
Đây có thể là cách tiếp cận ít được mong muốn nhất, nhưng tôi sẽ giải quyết nó ngay từ đầu. Nếu bạn nhận thấy rằng bạn cần trả lại các giá trị ở bên trái tra cứu của mình khá thường xuyên, bạn có thể xem xét cấu trúc lại trang tính của mình để các giá trị ở bên phải công thức của bạn.
Một phương pháp thay thế để tái cấu trúc là sử dụng cột trợ giúp ở bên phải công thức của bạn. Cột trợ giúp này chỉ cần tham chiếu đến các giá trị trả về thực tế. Ví dụ: nếu giá trị trả về của bạn nằm trong cột A và công thức của bạn nằm trong cột E, bạn có thể thêm cột trợ giúp a J.
Công thức trong J1 sẽ đơn giản là = A1. Sao chép nó xuống, sau đó sử dụng cột J làm giá trị trả về của bạn trong các công thức ở cột E.
Sử dụng INDEX và MATCH
Có lẽ cách tiếp cận phổ biến nhất đối với vấn đề mà Sam đang gặp phải là sử dụng kết hợp các hàm INDEX và MATCH thay vì hàm VLOOKUP. Ví dụ: giả sử bạn có công thức VLOOKUP sau:
=VLOOKUP(G1,$C$1:$E$100,3,TRUE)
Điều này sẽ tìm kiếm trong phạm vi C1: C100 giá trị trong G1 (dưới dạng khớp gần đúng) và nhận được giá trị tương ứng trong E1: E100. Công thức này tương đương với công thức sau:
=INDEX($E$1:$E$100,MATCH(G1,$C$1:$C$100,1))
Vì vậy, nếu bạn muốn có một cột ở bên trái của cột tra cứu của bạn (ví dụ A1: A100), bạn có thể sử dụng một cái gì đó như:
=INDEX($A$1:$A$100,MATCH(G1,$C$1:$C$100,1))
Nếu bạn muốn một kết quả phù hợp chính xác được trả về bởi tra cứu, tất cả những gì bạn cần làm là thay đổi giá trị cuối cùng 1 trong hàm MATCH thành 0, như sau:
=INDEX($A$1:$A$100,MATCH(G1,$C$1:$C$100,0))
Sử dụng hàm VLOOKUP và CHOOSE
Nếu bạn thực sự muốn tiếp tục sử dụng hàm Vlookup trong công thức của mình, bạn có thể “đánh lừa” nó truy xuất các giá trị ở bên trái bằng cách bao gồm cả hàm CHOOSE.
Để minh họa điều này, hãy giả sử rằng giá trị tra cứu của bạn nằm trong cột D và giá trị trả về nằm trong cột A. Trong ô G1 là giá trị tra cứu của bạn. Công thức sau sẽ trả về các giá trị thích hợp:
=VLOOKUP(G1,CHOOSE({1,2},$D$1:$D$100,$A$1:$A$100),2,FALSE)
Hàm CHOOSE trả về một mảng được tạo thành từ các ô được chỉ định.
Sau đó, hàm VLOOKUP trả về một giá trị từ cột thứ hai của mảng đó, giá trị này chỉ xảy ra là cột A, bên trái cột D.
ExcelTips là nguồn của bạn để đào tạo Microsoft Excel hiệu quả về chi phí.
Mẹo này (13608) áp dụng cho Microsoft Excel 2007, 2010, 2013, 2016, 2019 và Excel trong Office 365.