ปัญหาของคุณคือวิธีที่คุณกำลังผูกมัดคำสั่ง if เข้าด้วยกัน
คำสั่ง if ใน excel ถ้าอยู่ในรูปแบบเสมอ:
=IF(CONDITION,VAL IF TRUE, VAL IF FALSE)
คุณมีพวกเขาถูกล่ามโซ่ไว้ด้วยกันเช่น
=IF1(CONDITION1,VAL IF TRUE, VAL IF FALSE, IF2(CONDITION2,...))
สิ่งนี้ไม่สมเหตุสมผลเพราะคุณกำลังพูด
=IF1(CONDITION1,VAL IF TRUE, VAL IF FALSE, SOMETHING ELSE)
หากต้องการรวมข้อความถ้าคุณมีสองตัวเลือก:
ทำให้แต่ละรายการในภายหลังหากคำสั่งเงื่อนไข FALSE ของคำสั่ง if ก่อนหน้านี้ ดังนั้นคุณกำลังพูดว่า "หากสิ่งที่เป็นจริงแล้วเอาท์พุทนี้ถ้าไม่แล้วย้ายไปที่ถ้าคำสั่ง" ถัดไป ในภาษา excel ทั้ง:
=IF(CONDITION1,OUTPUT1,IF(CONDITION2,OUTPUT2,IF(CONDITION3,OUTPUT3,"")))
เชื่อมต่อประโยคจำนวนมากเข้าด้วยกัน นั่นก็เหมือนกับการพูดว่า "ถ้าสิ่งที่เป็นจริงแล้วเอาท์พุทนี้ถ้าไม่เอาท์พุทก็ไม่ทำอะไรเลยนอกจากนี้ถ้าสิ่งอื่นเป็นจริงแล้วเอาท์พุทนี้
=IF(CONDITION1,OUTPUT1,"") & IF(CONDITION2,OUTPUT2,"") & IF(CONDITION3,OUTPUT3,"")
โปรดทราบว่าในกรณีแรกทันทีที่พบเงื่อนไขอย่างใดอย่างหนึ่งสูตรจะเสร็จสมบูรณ์ในขณะที่ในกรณีที่สองเงื่อนไขทั้งหมดจะถูกทดสอบเสมอ ซึ่งหมายความว่า:
ตัวอย่างของคุณก็เช่นกัน
=IF(OR(AF2="CitiCMT", AF2="AML APAC ATHENA", AF2="AML EMEA", AF2="AML Americas"),"AML",
IF(OR(AF2="CitiScreening", AF2="Offshore Wealth Services", AF2="CitiScreening China"),"CitiScreening",
IF(OR(AF2="Registrations", AF2="Trade Surveillance - Markets", AF2="Reg-Reporting", AF2="Trade Surveillance
- IBSG", AF2="eCADD", AF2="EmDD", AF2="Trade Surveillance", AF2="Trade Surveillance - Retail"),"Core Compliance","")))
หรือ
=IF(OR(AF2="CitiCMT", AF2="AML APAC ATHENA", AF2="AML EMEA", AF2="AML Americas"),"AML","") &
IF(OR(AF2="CitiScreening", AF2="Offshore Wealth Services", AF2="CitiScreening China"),"CitiScreening","") &
IF(OR(AF2="Registrations", AF2="Trade Surveillance - Markets", AF2="Reg-Reporting", AF2="Trade Surveillance - IBSG",
AF2="eCADD", AF2="EmDD", AF2="Trade Surveillance", AF2="Trade Surveillance - Retail"),"Core Compliance","")
ในกรณีของคุณเซลล์ไม่สามารถเป็น "Citiscreening" และ "การลงทะเบียน" ได้ดังนั้นจึงเหมาะสมกว่าที่จะใช้เซลล์แรกแม้ว่าความเร็วจะไม่สำคัญก็ตามเซลล์ที่สองสามารถอ่านได้ง่ายขึ้นและง่ายต่อการอ่านมากขึ้น แก้ไขเนื่องจากไม่มีวงเล็บจำนวนมากที่จะจับคู่
เคล็ดลับ:
โปรดทราบว่าคุณสามารถแบ่งสูตรข้ามบรรทัดได้โดยกด alt + enter สิ่งนี้จะทำให้ง่ายต่อการอ่านและไม่มีผลต่อผลลัพธ์ของสูตร
Excel มีคำแนะนำเครื่องมือที่มีประโยชน์ซึ่งแสดงให้คุณเห็นว่าอาร์กิวเมนต์ตัวใดที่เคอร์เซอร์อยู่ที่นั่น นอกจากนี้หากคุณคลิกที่อาร์กิวเมนต์มันจะเน้นส่วนของสูตรนั้น
ในฟังก์ชั่นดั้งเดิมของคุณคุณจะเห็นว่ามีการขัดแย้งกันมากเกินไปเพราะหลังจาก "" ครั้งแรกไม่มีอะไรเป็นตัวหนา
ในกรณีที่มีประโยชน์ต่อไปนี้เป็นคำตอบข้างต้นใน pseudocode:
ตัวเลือกที่ 1.
if (condition1) then
output1
else if (condition2) then
output2
else if (condition3) then
output3
else output nothing
ตัวเลือก 2:
if (condition1) then
output1
else
output nothing
if (condition2) then
output2
else
output nothing
if (condition3) then
output3
else
output nothing