บางโจทย์ต้องคำนวณค่าทีละเซลล์ด้วยสูตรเดียวกัน แล้วรวมผลลัพธ์ทั้งหมดเข้าด้วยกัน เช่น คำนวณราคาหลังภาษีของสินค้าทุกแถวพร้อมกัน MAP, REDUCE และ SCAN คือกลุ่มฟังก์ชันที่ใช้ร่วมกับ LAMBDA เพื่อคำนวณข้อมูลทีละตัวในช่วงเซลล์แบบอัตโนมัติ โดยไม่ต้องเขียนสูตรซ้ำทีละเซลล์เอง
ความแตกต่างของทั้ง 3 ฟังก์ชัน
| ฟังก์ชัน | ทำอะไร |
| MAP | คำนวณค่าใหม่ให้ทุกเซลล์ในช่วง ได้ผลลัพธ์เป็นช่วงข้อมูลขนาดเท่าเดิม |
| REDUCE | คำนวณสะสมค่าทั้งช่วงจนเหลือผลลัพธ์เดียว (เช่น ผลรวม) |
| SCAN | คำนวณสะสมค่าเหมือน REDUCE แต่เก็บผลลัพธ์ระหว่างทางทุกขั้นตอนไว้ด้วย |
ตัวอย่าง MAP
=MAP(A1:A3,LAMBDA(x,x*1.07))| A | B | |
|---|---|---|
| 1 | 100 | 107 |
| 2 | 200 | 214 |
| 3 | 300 | 321 |
สูตรนี้คำนวณราคาหลัง VAT 7% ให้ทุกแถวพร้อมกันในสูตรเดียว โดย LAMBDA กำหนดสูตรที่ใช้กับแต่ละค่า (x) คือ “คูณ 1.07” แล้ว MAP ก็นำสูตรนี้ไปใช้กับทุกเซลล์ในช่วง A1:A3
ตัวอย่าง REDUCE
=REDUCE(0,A1:A3,LAMBDA(รวม,x,รวม+x))| A | C | |
|---|---|---|
| 1 | 100 | 600 |
| 2 | 200 | |
| 3 | 300 |
เริ่มจาก 0 แล้วบวกค่าแต่ละเซลล์เข้าไปสะสมเรื่อยๆ จนได้ผลรวมสุดท้าย 600 (ทำงานคล้าย SUM แต่ปรับตรรกะการสะสมได้อิสระกว่า เช่น เปลี่ยนเป็นคูณสะสมแทนบวกก็ได้)
ข้อควรรู้
| ข้อควรรู้ | รายละเอียด |
| ต้องใช้ Excel รุ่นไหน | ใช้ได้กับ Microsoft 365 ที่อัปเดตล่าสุด |
| ต้องเข้าใจ LAMBDA ก่อน | ทั้ง 3 ฟังก์ชันต้องใช้ร่วมกับ LAMBDA เสมอ ควรทำความเข้าใจ LAMBDA พื้นฐานก่อน |
| เหมาะกับโจทย์แบบไหน | โจทย์ที่ต้องคำนวณซับซ้อนกว่าสูตรสำเร็จรูปทั่วไปรองรับ |
สรุป
MAP, REDUCE และ SCAN เหมาะกับผู้ใช้ที่คุ้นกับ LAMBDA แล้วและต้องการคำนวณข้อมูลทีละตัวแบบยืดหยุ่นกว่าฟังก์ชันสำเร็จรูป ถ้ายังไม่เคยใช้ LAMBDA มาก่อน แนะนำอ่านพื้นฐานก่อนที่ LAMBDA ใน Excel สร้างฟังก์ชันของตัวเองใช้ซ้ำได้