วิธีระบุเซลล์ในคอลัมน์ A ที่มีค่าใด ๆ ในคอลัมน์ B


1

ก่อนอื่นฉันไม่ใช่ผู้ใช้ Excel ขั้นสูง ฉันแน่ใจว่า Excel สามารถทำสิ่งที่ฉันต้องการถามได้ แต่ฉันยังไม่พบวิธีในการพยายามหรือการค้นหาของฉัน

คำถามของฉันคล้ายกับhttps://stackoverflow.com/questions/11315551/find-if-value-in-column-a-contain-value-from-column-bยกเว้นว่า A) คำตอบที่ใช้ไม่ได้ สำหรับฉันและ B) แม้ว่ามันจะไม่ได้ผลลัพธ์ที่ถูกต้องที่ฉันต้องการ

โดยทั่วไปฉันมี 2 คอลัมน์ คอลัมน์ A มี URL (16388 แถว) คอลัมน์ B มีทาก URL (202 แถว)

ฉันต้องการค้นหาเพื่อดูว่ามีค่าใด ๆ ในคอลัมน์ B อยู่ภายในค่าใด ๆ ของคอลัมน์ A หรือไม่ถ้าใช่ฉันต้องการคืนค่าTRUEในคอลัมน์ C หรือไม่

จากสิ่งที่ฉันอ่านVLOOKUPควรทำงานให้กับสิ่งนี้ แต่สำหรับชีวิตของฉันฉันไม่สามารถทำงานได้ ฉันยังลองในคำตอบในลิงก์ด้านบนที่ใช้COUNTIFและMATCHแต่ในทั้งสองกรณีทั้งหมดที่ฉันได้รับคือFALSEผลตอบแทนเมื่อฉันรู้ว่ามีค่าในคอลัมน์ B ที่มีอยู่ใน URL ในคอลัมน์ A

มันสมเหตุสมผลไหม

แก้ไข: คำตอบทั้งสองให้ผลลัพธ์ (ขอบคุณ!) แต่ฉันสงสัยว่าฉันอาจไม่ได้ถามคำถามอย่างถูกต้อง ในคำตอบทั้งสองนี้ฉันได้ผลลัพธ์ TRUE แล้ว แต่ดูเหมือนว่า TRUE มีความสัมพันธ์กับกระสุนในคอลัมน์ B มากกว่า URL ในคอลัมน์ A ขอให้ฉันพูดแบบนี้:

ฉันจะย้ายทากจากคอลัมน์ B ไปยัง C เพื่อให้ B สามารถใช้สำหรับการตอบกลับ TRUE สิ่งที่ฉันต้องการให้ fomula ต้องทำคือ:

  1. ดู URL ใน A1
  2. มีค่าใดในคอลัมน์ C ที่อยู่ภายใน URL ใน A1 หรือไม่
  3. ถ้าใช่ให้ส่งคืน TRUE เป็น B1 หาก FALSE เว้นว่างไว้

ดังนั้นฉันจะสามารถดูว่า URL ใดที่มีกระสุนที่ฉันค้นหา ฉันขอโทษที่ไม่ชัดเจนในคำถามต้นฉบับของฉัน (แม้ว่าฉันรู้สึกว่ามันเป็นเพียงการปรับแต่งเล็กน้อยจากคำตอบที่ฉันได้รับไปแล้ว)

คำตอบ:


4

แทนที่จะvlookupใช้matchเมื่อค้นหาค่าที่แน่นอนหรือ ` ลองใช้ในเซลล์ C1:

=Match(B1,A:A,0)

หากพบสิ่งนี้จะส่งคืนหมายเลขแถวที่พบหาก B ไม่ใช่ n A ก็จะส่งกลับข้อผิดพลาด

ดังนั้นคุณสามารถก้าวไปอีกขั้นแล้วพูดสิ่งนี้:

=If(Iserror(Match(B1,A:A,0)),"This B Is Not Found In Column A","This B is in Column A")
or
=If(Iserror(Match(B1,A:A,0)),"False","True")

สุดท้ายโปรดทราบว่ารหัสการจับคู่ด้านบนทั้งหมดนั้นใช้สำหรับการค้นหาการจับคู่ที่ตรงกัน หากคุณต้องการตรวจสอบว่า B นั้นอยู่ที่ใดภายใน A คุณต้องใส่*สัญลักษณ์แทนแต่ละด้านของมันดังนี้:

=If(Iserror(Match("*"&B1&"*",A:A,0)),"False","True")

ดังนั้นฉันจึงแก้ไขคำตอบแรกของคุณเพื่อใช้สัญลักษณ์แทนดังนั้นจึงอ่าน: = MATCH (" " & B1 & " ", A: A, 0) และนั่นทำงานได้เหมือนแชมป์! ปรากฎว่าฉันกำลังมองหาผลลัพธ์ที่ค่อนข้างแตกต่างกัน (ดูการแก้ไขของฉันกับคำถามเดิม) แต่ฉันบันทึกคำตอบนี้ไว้แน่นอนและผลลัพธ์นี้มีประโยชน์อย่างมากสำหรับฉัน ขอบคุณ! :)

อาฉันดีใจที่การพิมพ์ด้วยคำตอบทั้งหมดของฉันพิสูจน์แล้วว่ามีประโยชน์เพื่อให้คุณสามารถแก้ไขได้ตามที่คุณต้องการ!
danielpiestrak

0

คุณได้ลองสูตรต่อไปนี้แล้วคืนค่าเป็น True หากพบคู่ที่ตรงกันและเป็นเท็จ

=not(isna(match("*"&b1&"*",A:A,0)))

ใช้งานได้ แต่เป็นคำตอบที่ถูกต้องสำหรับคำถามที่ผิด (ฉันได้แก้ไขโพสต์ต้นฉบับเพื่อพยายามชี้แจง) ขอขอบคุณสำหรับความช่วยเหลือของคุณ. มันก็จะดีขึ้นเมื่อเจ้าของมีความชัดเจนเกี่ยวกับสิ่งที่พวกเขาต้องการ :)
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.