Hướng dẫn công thức Excel - "Hàm chứa và VLOOKUP"

Chào, tôi cần giúp đỡ để xây dựng công thức cho dữ liệu sau. Kết quả tôi muốn đạt được được hiển thị ở cột B.

MỘT B
SỰ MIÊU TẢ Phong cách
Áo len cổ tròn Tôi muốn JUMPER được điền vào ô này
QUẦN DÀI Tôi muốn PANT được điền vào ô này
ÁO KAFTAN CỔ TRÒN Tôi muốn KAFTAN xuất hiện trong ô này
ĐẦM NGẮN CÓ DÂY RÚT Tôi muốn hiển thị dòng chữ "SHORT DRESS" trong ô này.

Tôi muốn dữ liệu trong cột B được điền từ một danh sách tôi có trên trang tính 2.

ĐẦM
QUẦN DÀI
KAFTAN
ĐẦM NGẮN
ÁO SƠ MI
ÁO LEN

Tôi hy vọng mình đã giải thích rõ ràng - Cảm ơn sự giúp đỡ của bạn. :)




Trả lời:

Tôi thấy có hai vấn đề:

  1. Từ "PANT" trong "LONG PANT" không khớp với từ "PANTS" trong danh sách trên Trang tính 2. Nếu bạn thay đổi "LONG PANT" thành "LONG PANTS", từ "PANTS" sẽ được tìm thấy.
  2. "DRAWSTRING SHORT DRESS" khớp với hai mục trong danh sách: "DRESS" và "SHORT DRESS". Tùy thuộc vào công thức bạn sử dụng, một trong hai mục sẽ được tìm thấy.

Phương án 1: Nhập công thức mảng sau vào ô B2, xác nhận bằng tổ hợp phím Ctrl+Shift+Enter:

=INDEX(Sheet2!$A$1:$A$6,MATCH(1000000,SEARCH(Sheet2!$A$1:$A$6,A2)))

Chỉnh sửa phạm vi $A$1:$A$6 khi cần, sau đó điền xuống đến hết dữ liệu.

Trong ví dụ của bạn, nó sẽ trả về "SHORT DRESS" ở ô B5.

Phương án 2: Nhập công thức mảng sau vào ô B2, xác nhận bằng tổ hợp phím Ctrl+Shift+Enter:

=INDEX(Sheet2!$A$1:$A$6,MATCH(1,MATCH("*"&Sheet2!$A$1:$A$6&"*",A2,0),0))

Chỉnh sửa phạm vi $A$1:$A$6 khi cần, sau đó điền xuống đến hết dữ liệu.

Trong ví dụ của bạn, nó sẽ trả về "DRESS" trong ô B5.



Trả lời:

Vui lòng xem hình ảnh bên dưới:

Nhập công thức sau (công thức thông thường , không phải công thức mảng ) vào ô B2 và sao chép xuống:

=IFERROR(TÌM KIẾM(9,999999999999999E+307,TÌM KIẾM($A$13:$A$18,$A2),$A$13:$A$18),"")

1. Phạm vi cần so khớp được lấy là A13:A18 để dễ minh họa - phạm vi này có thể thay đổi;

2. Nếu ô A14 chứa từ "PANT", thì ô B3 cũng sẽ hiển thị "PANT". Hiện tại, không có từ nào trong ô A3 khớp với phạm vi từ A13 đến A18.

Trân trọng,

Amit Tandon



Trả lời:

Chào Amit,

Cảm ơn bạn đã giúp đỡ về vấn đề này.

Tôi đã thử áp dụng công thức trên nhưng kết quả trả về là 0 - tôi không chắc có phải do tôi đang làm việc trên 2 bảng tính hay không.

Đây là công thức tôi đang sử dụng:

=IFERROR(LOOKUP(9.99999999999999E+307,SEARCH('TÌM KIẾM DỮ LIỆU'!$P$3:$P$300,'TẢI LÊN BẢNG TÍNH CÓ CÔNG THỨC'!E4),'TÌM KIẾM DỮ LIỆU'!$P$3:$P$300),"")

Kết quả như sau:

Cảm ơn bạn một lần nữa vì sự giúp đỡ.

Andrea



Trả lời:

Chào Hans,

Cảm ơn bạn đã giúp đỡ - tôi đã thử cả hai công thức bạn đề xuất và thu được kết quả như sau:

Tùy chọn 1: =INDEX('TÌM KIẾM DỮ LIỆU'!$P$3:$P$300,MATCH(1000000,SEARCH('TÌM KIẾM DỮ LIỆU'!$P$3:$P$300,'TẢI LÊN BẢNG TÍNH CÓ CÔNG THỨC'!E4)))

Phương án thứ 2 cũng cho kết quả N/A.

=INDEX('TÌM KIẾM DỮ LIỆU'!$P$3:$P$300,MATCH(1,MATCH("*"&'TÌM KIẾM DỮ LIỆU'!$P$3:$P$300&"*",'TẢI LÊN BẢNG TÍNH CÓ CÔNG THỨC'!E5,0),0))

Cảm ơn sự giúp đỡ của bạn.

Andrea



Trả lời:

Bạn đã xác nhận công thức bằng tổ hợp phím Ctrl+Shift+Enter chưa? Điều đó rất quan trọng, nếu bạn chỉ nhấn Enter hoặc Tab, công thức sẽ không hoạt động chính xác.



Trả lời:

Chào Andrea,

Lý do bạn nhận được kết quả bằng 0 là vì có các ô trống trong phạm vi tìm kiếm ($P$3:$P$300) trong khi phạm vi tìm kiếm của tôi ($A$13:$A$18) không có ô trống nào.

Trong trường hợp có các ô trống trong phạm vi tìm kiếm, hãy sửa đổi công thức để phù hợp với phạm vi/trang tính của bạn. Vui lòng sử dụng công thức bên dưới dưới dạng công thức mảng (CTRL+SHIFT+ENTER) :

=IFERROR(LOOKUP(9.99999999999999E+307,SEARCH(IF('TÌM KIẾM DỮ LIỆU'!$P$3:$P$300<>"",'TÌM KIẾM DỮ LIỆU'!$P$3:$P$300),'TẢI LÊN BẢNG TÍNH CÓ CÔNG THỨC'!$E4),IF('TÌM KIẾM DỮ LIỆU'!$P$3:$P$300<>"",'TÌM KIẾM DỮ LIỆU'!$P$3:$P$300)),"")

Bạn cũng có thể tải xuống tệp Excel từ liên kết bên dưới, trong đó đã minh họa điều này:

http://globaliconnect.com/excel/Microsoft/DownloadFiles/PartialMatch_ArrayCriteria.xlsx

Trân trọng,

Amit Tandon

www.globaliconnect.com

Comments

Popular posts from this blog

Điều tôi muốn làm trong Excel 2010 là tạo một nút tùy chỉnh và gắn nó vào thanh công cụ Truy nhập nhanh và chạy một macro cụ thể.

Mở tài liệu Excel và Word từ Outlook Lỗi - Không đủ bộ nhớ

Excel 2016 - mở tất cả các tệp trong MỘT phiên bản