Về cơ bản bạn muốn biết nếu có bất kỳ tế bào G2:R2
trong một tờ có cùng giá trị với ô I2
trên một tờ khác.
Có một số cách để làm điều đó. Cách dễ nhất mà bạn nghĩ đến là điều này vì các giá trị bạn đang kiểm tra nằm trong một phạm vi liên tục:
Phương pháp 1: HLOOKUP / VLOOKUP
=IF(ISERROR(HLOOKUP(Sheet1!I2,Sheet!G2:R2,1,FALSE)),"","Y")
Việc sử dụng này tìm kiếm giá trị trong ô I2
trên một trang tính và kiểm tra xem nó có trong trang tính khác trong phạm vi không G2:R2
. Nếu HLOOKUP
tìm thấy ít nhất một giá trị trong phạm vi G2:R2
phù hợp với tế bào I2
trong tờ khác, nó trả về Y
hoặc nếu không thì không trả về giá trị.
tôi đã sử dụng HLOOKUP
vì phạm vi được cung cấp là một phạm vi ngang. Nếu phạm vi là một phạm vi dọc, bạn có thể sử dụng VLOOKUP
thay thế.
Nếu các giá trị là không phải trong một phạm vi liên tục vì bất kỳ lý do gì, bạn có thể sử dụng 2 phương pháp khác bên dưới.
Đây là một cách khác:
Cách 2: XÁC NHẬN
=IF(ISERROR(FIND(Sheet1!I2,CONCATENATE(Sheet!G2,Sheet!H2,Sheet!I2,Sheet!J2,Sheet!K2,Sheet!L2,Sheet!M2,Sheet!N2,Sheet!O2,Sheet!P2,Sheet!Q2,Sheet!R2))),"","Y")
Điều này về cơ bản tạo ra một chuỗi lớn tất cả các giá trị trong các ô G2:R2
và kiểm tra nếu giá trị trong ô I2
của tờ khác là trong đó. Nếu có, nó trả về Y
mặt khác, nó không trả về giá trị
Lưu ý rằng vì phương thức này tạo ra một chuỗi lớn trong số tất cả dữ liệu trong phạm vi ô bạn cần tìm, tùy thuộc vào loại dữ liệu trong các ô đó, nó có thể trả về Y
không chính xác Ví dụ: Nếu Sheet1!I2
có giá trị 123
và Sheet!G2
có giá trị 12
và Sheet!H2
có giá trị 34
, phương pháp này vẫn sẽ hiển thị Y
vì "chuỗi lớn" sẽ chứa "1234 ..." và giá trị 123
sẽ nằm trong chuỗi này.
Một cách khác để làm điều này là:
Phương pháp 3: Toán tử Boolean - HOẶC
[@ fixer1234 đã đề cập đến điều này đầu tiên]
=IF(OR((Sheet!G2=Sheet1!I2), (Sheet!H2=Sheet1!I2),(Sheet!I2=Sheet1!I2), (Sheet!J2=Sheet1!I2), (Sheet!K2=Sheet1!I2), (Sheet!L2=Sheet1!I2), (Sheet!M2=Sheet1!I2), (Sheet!N2=Sheet1!I2), (Sheet!O2=Sheet1!I2), (Sheet!P2=Sheet1!I2), (Sheet!Q2=Sheet!I2), (Sheet!R2=Sheet1!I2) ),"Y","")
Điều này sử dụng toán tử boolean OR
để kiểm tra nếu có bất kỳ giá trị nào trong phạm vi G2:R2
đang ở trong phòng giam I2
trên tờ khác. Nếu toán tử boolean tìm thấy ít nhất một giá trị khớp với ô I2
trong tờ khác, nó trả về Y
hoặc nếu không thì không trả về giá trị.
Phương pháp 4: Trải ra công thức
- Nếu bạn chỉ muốn sử dụng
IF
điều kiện (vì một số lý do tôi không thể tưởng tượng được), bạn có thể trải ra IF
điều kiện vào nhiều ô và sau đó sử dụng kết quả của các ô đó để xác định kết quả cuối cùng. Ví dụ: bạn có thể có một vài IF
điều kiện trong một ô và bạn có thể sử dụng kết quả của điều này trong một ô khác cùng với một vài điều nữa IF
điều kiện và như vậy.
Bạn có thể có những điều sau đây trong tế bào A1
của một tờ:
=IF(Sheet!$G$2=Sheet1!I2,"Y",IF(Sheet!$H2=Sheet1!I2,"Y", IF(Sheet!$I2=Sheet1!I2,"Y",IF(Sheet!$J2=Sheet1!I2,"Y", IF(Sheet!$K2=Sheet1!I2,"Y","")))))
Và sau đó, bạn có thể có những điều sau đây trong tế bào A2
của một tờ:
=IF(A1="Y", "Y", IF(Sheet!$L2=Sheet1!I2,"Y", IF(Sheet!$M2=Sheet1!I2,"Y",IF(Sheet!$N2=Sheet1!I2,"Y", ""))))
Cuối cùng, bạn có thể có các mục sau trong ô A3
của một tờ:
=IF(A2="Y","Y",IF(Sheet!$O2=Sheet1!I2,"Y",IF(Sheet!$P2=Sheet1!I2,"Y", IF(Sheet!$Q2=Sheet1!I2,"Y",IF(Sheet!$R2=Sheet1!I2,"Y","")))))
Phương pháp 5: VBA
Sử dụng VBA nếu bạn cảm thấy thoải mái với nó để tạo một hàm do người dùng xác định tùy chỉnh trong đó bạn có thể có nhiều lồng nhau If
các câu lệnh.
Lưu ý: Đầu ra của cả hai công thức này giống như công thức mà bạn đã cung cấp.