Power Query: คำสั่ง If - ifs แบบซ้อนและหลายเงื่อนไข
ใน Excel Power Queryคำสั่ง IF เป็นหนึ่งในฟังก์ชันยอดนิยมในการตรวจสอบเงื่อนไขและส่งกลับค่าเฉพาะ ขึ้นอยู่กับว่าผลลัพธ์เป็น TRUE หรือ FALSE มีความแตกต่างบางประการระหว่างคำสั่ง if และฟังก์ชัน IF ของ Excel ในบทช่วยสอนนี้ ฉันจะแนะนำไวยากรณ์ของคำสั่ง if นี้ และตัวอย่างที่เรียบง่ายและซับซ้อนสำหรับคุณ
พื้นฐานไวยากรณ์คำสั่ง if ของ Power Query
Power Query ถ้าคำสั่งใช้คอลัมน์แบบมีเงื่อนไข
Power Query if คำสั่งโดยการเขียนรหัส M
พื้นฐานไวยากรณ์คำสั่ง if ของ Power Query
In Power Queryไวยากรณ์คือ:
- ลอจิคัล_ทดสอบ: เงื่อนไขที่คุณต้องการทดสอบ
- ค่า_if_จริง: ค่าที่จะส่งคืนหากผลลัพธ์เป็น TRUE
- ค่า_if_false: ค่าที่จะส่งคืนหากผลลัพธ์เป็น FALSE
ใน Excel Power Queryมีสองวิธีในการสร้างตรรกะตามเงื่อนไขประเภทนี้:
- การใช้คุณสมบัติคอลัมน์เงื่อนไขสำหรับบางสถานการณ์พื้นฐาน
- การเขียนรหัส M สำหรับสถานการณ์ขั้นสูงเพิ่มเติม
ในหัวข้อต่อไปนี้ ผมจะพูดถึงตัวอย่างการใช้คำสั่ง if นี้
Power Query ถ้าคำสั่งใช้คอลัมน์แบบมีเงื่อนไข
ตัวอย่างที่ 1: คำสั่ง if พื้นฐาน
ในที่นี้ ผมจะแนะนำวิธีใช้คำสั่ง if ในนี้ Power Query. ตัวอย่างเช่น ฉันมีรายงานสินค้าต่อไปนี้ หากสถานะสินค้าเป็นเก่าแสดงส่วนลด 50% หากสถานะสินค้าเป็นใหม่จะแสดงส่วนลด 20% ดังภาพหน้าจอด้านล่าง
1. เลือกตารางข้อมูลจากเวิร์กชีต จากนั้นใน Excel 2019 และ Excel 365 ให้คลิก ข้อมูล > จากตาราง/ช่วงดูภาพหน้าจอ:
หมายเหตุ: ใน Excel 2016 และ Excel 2021 ให้คลิก ข้อมูล > จากตารางดูภาพหน้าจอ:
2. จากนั้นในช่องเปิด Power Query บรรณาธิการ หน้าต่างคลิก เพิ่มคอลัมน์ > คอลัมน์เงื่อนไขดูภาพหน้าจอ:
3. ในการโผล่ออกมา เพิ่มคอลัมน์เงื่อนไข โปรดดำเนินการดังต่อไปนี้:
- ชื่อคอลัมน์ใหม่: ป้อนชื่อสำหรับคอลัมน์ใหม่
- จากนั้นระบุเกณฑ์ที่คุณต้องการ ตัวอย่างเช่นฉันจะระบุ หากสถานะเท่ากับเก่าแล้ว 50% อื่น 20%;
- ชื่อคอลัมน์: คอลัมน์สำหรับประเมินเงื่อนไข if ของคุณ ที่นี่ ฉันเลือกสถานะ
- ผู้ประกอบการ: ตรรกะเงื่อนไขที่จะใช้ ตัวเลือกจะแตกต่างกันไปตามประเภทข้อมูลของชื่อคอลัมน์ที่เลือก
- ข้อความ: ขึ้นต้นด้วย ไม่ขึ้นต้นด้วย เท่ากับ ประกอบด้วย ฯลฯ
- เบอร์: เท่ากับ ไม่เท่ากับ มากกว่าหรือเท่ากับ ฯลฯ
- วันที่: อยู่ก่อน อยู่หลัง เท่ากับ ไม่เท่ากัน ฯลฯ
- ความคุ้มค่า: ค่าเฉพาะเพื่อเปรียบเทียบการประเมินของคุณ ร่วมกับชื่อคอลัมน์และตัวดำเนินการประกอบกันเป็นเงื่อนไข
- เอาท์พุต: ค่าที่จะส่งคืนหากตรงตามเงื่อนไข
- อื่น: ค่าอื่นที่จะส่งกลับเมื่อเงื่อนไขเป็นเท็จ
4. จากนั้นคลิก OK ปุ่มเพื่อกลับไปที่ Power Query บรรณาธิการ หน้าต่าง. ตอนนี้ใหม่ ส่วนลด เพิ่มคอลัมน์ ดูภาพหน้าจอ:
5. หากคุณต้องการจัดรูปแบบตัวเลขเป็นเปอร์เซ็นต์ ให้คลิก ABC123 ไอคอนจาก ส่วนลด ส่วนหัวของคอลัมน์ แล้วเลือก ร้อยละ ตามที่คุณต้องการดูภาพหน้าจอ:
6. สุดท้ายกรุณาคลิก หน้าแรก > ปิดและโหลด > ปิดและโหลด เพื่อโหลดข้อมูลนี้ไปยังแผ่นงานใหม่
ตัวอย่างที่ 2: คำสั่ง if ที่ซับซ้อน
ด้วยตัวเลือกคอลัมน์เงื่อนไขนี้ คุณยังสามารถแทรกเงื่อนไขสองเงื่อนไขขึ้นไปใน เพิ่มคอลัมน์เงื่อนไข กล่องโต้ตอบ กรุณาทำสิ่งนี้:
1. เลือกตารางข้อมูลแล้วไปที่ Power Query บรรณาธิการ หน้าต่างโดยคลิก ข้อมูล > จากตาราง/ช่วง. ในหน้าต่างใหม่คลิก เพิ่มคอลัมน์ > คอลัมน์เงื่อนไข.
2. ในการโผล่ออกมา เพิ่มคอลัมน์เงื่อนไข โปรดดำเนินการดังต่อไปนี้:
- ป้อนชื่อสำหรับคอลัมน์ใหม่ลงใน ชื่อคอลัมน์ใหม่ กล่องข้อความ;
- ระบุเกณฑ์แรกลงในฟิลด์เกณฑ์แรก จากนั้นคลิก เพิ่มข้อ ปุ่มเพื่อเพิ่มช่องเกณฑ์อื่นๆ ตามที่คุณต้องการ
3. เมื่อครบเกณฑ์แล้วให้คลิก OK ปุ่มเพื่อกลับไปที่ Power Query บรรณาธิการ หน้าต่าง. ตอนนี้ คุณจะได้รับคอลัมน์ใหม่พร้อมผลลัพธ์ที่คุณต้องการ ดูภาพหน้าจอ:
4. สุดท้ายกรุณาคลิก หน้าแรก > ปิดและโหลด > ปิดและโหลด เพื่อโหลดข้อมูลนี้ไปยังแผ่นงานใหม่
Power Query if คำสั่งโดยการเขียนรหัส M
โดยปกติแล้ว Conditional Column จะมีประโยชน์สำหรับบางสถานการณ์พื้นฐาน บางครั้ง คุณอาจต้องใช้หลายเงื่อนไขด้วยตรรกะ AND หรือ OR ในกรณีนี้ คุณต้องเขียนโค้ด M ภายในคอลัมน์แบบกำหนดเองสำหรับสถานการณ์ที่ซับซ้อนมากขึ้น
ตัวอย่างที่ 1: คำสั่ง if พื้นฐาน
ใช้ข้อมูลแรกเป็นตัวอย่าง หากสถานะสินค้าเป็น เก่า แสดงส่วนลด 50%; หากสถานะสินค้าเป็น New แสดงส่วนลด 20% สำหรับการเขียนรหัส M โปรดทำดังนี้:
1. เลือกตารางแล้วคลิก ข้อมูล > จากตาราง/ช่วง ไป Power Query บรรณาธิการ หน้าต่าง
2. ในหน้าต่างที่เปิดอยู่ ให้คลิก เพิ่มคอลัมน์ > คอลัมน์ที่กำหนดเองดูภาพหน้าจอ:
3. ในการโผล่ออกมา คอลัมน์ที่กำหนดเอง โปรดดำเนินการดังต่อไปนี้:
- ป้อนชื่อสำหรับคอลัมน์ใหม่ลงใน ชื่อคอลัมน์ใหม่ กล่องข้อความ;
- จากนั้นป้อนสูตรนี้: ถ้า [สถานะ] = "เก่า" แล้ว "50%" อื่น "20%" เข้าไปใน คอลัมน์ที่กำหนดเอง สูตร กล่อง.
4. จากนั้นคลิก OK เพื่อปิดกล่องโต้ตอบนี้ ตอนนี้ คุณจะได้รับผลลัพธ์ต่อไปนี้ตามที่คุณต้องการ:
5. ในที่สุดคลิก หน้าแรก > ปิดและโหลด > ปิดและโหลด เพื่อโหลดข้อมูลนี้ไปยังแผ่นงานใหม่
ตัวอย่างที่ 2: คำสั่ง if ที่ซับซ้อน
โดยปกติแล้ว ในการทดสอบเงื่อนไขย่อย คุณสามารถซ้อนคำสั่ง if ได้หลายคำสั่ง ตัวอย่างเช่น ฉันมีตารางข้อมูลด้านล่าง หากสินค้าเป็น “เดรส” ให้ส่วนลด 50% จากราคาเดิม หากสินค้าเป็น “สเวตเตอร์” หรือ “มีฮู้ด” ให้ส่วนลด 20% จากราคาเดิม และสินค้าอื่นๆยังคงราคาเดิม
1. เลือกตารางข้อมูล แล้วคลิก ข้อมูล > จากตาราง/ช่วง ไป Power Query บรรณาธิการ หน้าต่าง
2. ในหน้าต่างที่เปิดอยู่ ให้คลิก เพิ่มคอลัมน์ > คอลัมน์ที่กำหนดเอง. ในการเปิด คอลัมน์ที่กำหนดเอง โปรดดำเนินการดังต่อไปนี้:
- ป้อนชื่อสำหรับคอลัมน์ใหม่ลงใน ชื่อคอลัมน์ใหม่ กล่องข้อความ;
- จากนั้นป้อนสูตรด้านล่างลงใน คอลัมน์ที่กำหนดเอง สูตร กล่อง.
- = ถ้า [สินค้า] = "ชุดเดรส" ดังนั้น [ราคา] * 0.5 อื่น
ถ้า [สินค้า] = "สเวตเตอร์" ดังนั้น [ราคา] * 0.8 อื่น
ถ้า [Product] = "Hoodie" ดังนั้น [ราคา] * 0.8
อื่นๆ [ราคา]
3. จากนั้นคลิก OK ปุ่มเพื่อกลับไปยัง Power Query บรรณาธิการ หน้าต่าง และคุณจะได้รับคอลัมน์ใหม่พร้อมข้อมูลที่คุณต้องการ ดูภาพหน้าจอ:
4. ในที่สุดคลิก หน้าแรก > ปิดและโหลด > ปิดและโหลด เพื่อโหลดข้อมูลนี้ไปยังแผ่นงานใหม่
ตรรกะ OR ทำการทดสอบเชิงตรรกะหลายชุด และผลลัพธ์จริงจะส่งคืนหากการทดสอบเชิงตรรกะใดๆ เป็นแบบ ture ไวยากรณ์คือ:
สมมติว่าฉันมีตารางด้านล่าง ตอนนี้ฉันต้องการให้คอลัมน์ใหม่แสดงเป็น: หากผลิตภัณฑ์คือ "เดรส" หรือ "เสื้อยืด" แบรนด์คือ "AAA" แบรนด์ของผลิตภัณฑ์อื่นคือ "BBB"
1. เลือกตารางข้อมูล แล้วคลิก ข้อมูล > จากตาราง/ช่วง ไป Power Query บรรณาธิการ หน้าต่าง
2. ในหน้าต่างที่เปิดอยู่ ให้คลิก เพิ่มคอลัมน์ > คอลัมน์ที่กำหนดเองในช่องเปิด คอลัมน์ที่กำหนดเอง โปรดดำเนินการดังต่อไปนี้:
- ป้อนชื่อสำหรับคอลัมน์ใหม่ลงใน ชื่อคอลัมน์ใหม่ กล่องข้อความ;
- จากนั้นป้อนสูตรด้านล่างลงใน สูตรคอลัมน์ที่กำหนดเอง กล่อง.
- = ถ้า [สินค้า] = "ชุดเดรส" หรือ [สินค้า] = "เสื้อยืด" ให้เลือก "AAA"
อื่น ๆ "BBB"
3. จากนั้นคลิก OK ปุ่มเพื่อกลับไปยัง Power Query บรรณาธิการ หน้าต่าง และคุณจะได้รับคอลัมน์ใหม่พร้อมข้อมูลที่คุณต้องการ ดูภาพหน้าจอ:
4. สุดท้ายคลิก หน้าแรก > ปิดและโหลด > ปิดและโหลด เพื่อโหลดข้อมูลนี้ไปยังแผ่นงานใหม่
ตรรกะ AND ทำการทดสอบเชิงตรรกะหลายรายการภายในคำสั่ง if เดียว การทดสอบทั้งหมดจะต้องเป็นจริงเพื่อส่งกลับผลลัพธ์ที่แท้จริง หากการทดสอบใดเป็นเท็จ ระบบจะส่งคืนผลลัพธ์ที่เป็นเท็จ ไวยากรณ์คือ:
จากข้อมูลข้างต้น ตัวอย่างเช่น ฉันต้องการให้คอลัมน์ใหม่แสดงเป็น: หากสินค้าเป็น "เดรส" และสั่งซื้อมากกว่า 300 ตัว ให้ส่วนลด 50% สำหรับราคาเดิม มิฉะนั้นคงราคาเดิม
1. เลือกตารางข้อมูล แล้วคลิก ข้อมูล > จากตาราง/ช่วง ไป Power Query บรรณาธิการ หน้าต่าง
2. ในหน้าต่างที่เปิดอยู่ ให้คลิก เพิ่มคอลัมน์ > คอลัมน์ที่กำหนดเอง. ในการเปิด คอลัมน์ที่กำหนดเอง โปรดดำเนินการดังต่อไปนี้:
- ป้อนชื่อสำหรับคอลัมน์ใหม่ลงใน ชื่อคอลัมน์ใหม่ กล่องข้อความ;
- จากนั้นป้อนสูตรด้านล่างลงใน สูตรคอลัมน์ที่กำหนดเอง กล่อง.
- = ถ้า [สินค้า] ="เดรส" และ [Order] > 300 แล้ว [ราคา]*0.5
อื่นๆ [ราคา]
3. จากนั้นคลิก OK ปุ่มเพื่อกลับไปยัง Power Query บรรณาธิการ หน้าต่าง และคุณจะได้รับคอลัมน์ใหม่พร้อมข้อมูลที่คุณต้องการ ดูภาพหน้าจอ:
4. สุดท้าย คุณควรโหลดข้อมูลนี้ลงในแผ่นงานใหม่โดยคลิก หน้าแรก > ปิดและโหลด > ปิดและโหลด.
ถ้าคำสั่งที่มี OR และ AND Logics
เอาล่ะ ตัวอย่างก่อนหน้านี้เข้าใจง่ายสำหรับเรา ตอนนี้มาทำให้ยากขึ้น คุณสามารถรวม AND และ OR เพื่อสร้างเงื่อนไขใดๆ ก็ตามที่คุณจินตนาการได้ ในประเภทนี้ คุณสามารถใช้วงเล็บในสูตรเพื่อกำหนดกฎที่ซับซ้อนได้
ใช้ข้อมูลข้างต้นเป็นตัวอย่างเช่นกัน สมมติว่าฉันต้องการให้คอลัมน์ใหม่แสดงเป็น: หากสินค้าเป็น "เดรส" และมีลำดับมากกว่า 300 หรือสินค้าเป็น "กางเกง" และมีลำดับมากกว่า 300 ให้แสดง “A+”, อื่น ๆ, แสดง “อื่น ๆ”.
1. เลือกตารางข้อมูล แล้วคลิก ข้อมูล > จากตาราง/ช่วง ไป Power Query บรรณาธิการ หน้าต่าง
2. ในหน้าต่างที่เปิดอยู่ ให้คลิก เพิ่มคอลัมน์ > คอลัมน์ที่กำหนดเอง. ในการเปิด คอลัมน์ที่กำหนดเอง โปรดดำเนินการดังต่อไปนี้:
- ป้อนชื่อสำหรับคอลัมน์ใหม่ลงใน ชื่อคอลัมน์ใหม่ กล่องข้อความ;
- จากนั้นป้อนสูตรด้านล่างลงใน สูตรคอลัมน์ที่กำหนดเอง กล่อง.
- =if ([Product] = "เดรส" และ [Order] > 300 ) หรือ
([สินค้า] = "กางเกง" และ [สั่งซื้อ] > 300 )
จากนั้น "A+"
อื่นๆ "อื่นๆ"
3. จากนั้นคลิก OK ปุ่มเพื่อกลับไปยัง Power Query บรรณาธิการ หน้าต่าง และคุณจะได้รับคอลัมน์ใหม่พร้อมข้อมูลที่คุณต้องการ ดูภาพหน้าจอ:
4. สุดท้าย คุณควรโหลดข้อมูลนี้ลงในแผ่นงานใหม่โดยคลิก หน้าแรก > ปิดและโหลด > ปิดและโหลด.
ในกล่องสูตรคอลัมน์แบบกำหนดเอง คุณสามารถใช้ตัวดำเนินการทางตรรกะต่อไปนี้:
- = : เท่ากับ
- <> : ไม่เท่ากับ
- > : มากกว่า
- >= : มากกว่าหรือเท่ากับ
- < : น้อยกว่า
- <= : น้อยกว่าหรือเท่ากับ
สุดยอดเครื่องมือเพิ่มผลผลิตในสำนักงาน
เพิ่มพูนทักษะ Excel ของคุณด้วย Kutools สำหรับ Excel และสัมผัสประสิทธิภาพอย่างที่ไม่เคยมีมาก่อน Kutools สำหรับ Excel เสนอคุณสมบัติขั้นสูงมากกว่า 300 รายการเพื่อเพิ่มประสิทธิภาพและประหยัดเวลา คลิกที่นี่เพื่อรับคุณสมบัติที่คุณต้องการมากที่สุด...
แท็บ Office นำอินเทอร์เฟซแบบแท็บมาที่ Office และทำให้งานของคุณง่ายขึ้นมาก
- เปิดใช้งานการแก้ไขและอ่านแบบแท็บใน Word, Excel, PowerPoint, ผู้จัดพิมพ์, Access, Visio และโครงการ
- เปิดและสร้างเอกสารหลายรายการในแท็บใหม่ของหน้าต่างเดียวกันแทนที่จะเป็นในหน้าต่างใหม่
- เพิ่มประสิทธิภาพการทำงานของคุณ 50% และลดการคลิกเมาส์หลายร้อยครั้งให้คุณทุกวัน!