สารบัญ
TLDR สรุปสั้นๆ
MAP ช่วยทำให้การแปลงค่าในอาร์เรย์ด้วย LAMBDA ง่ายและยืดหยุ่นมากขึ้น สามารถสร้างหรือเปลี่ยนแปลงอาร์เรย์ได้ด้วยวิธีการที่กำหนดเองแบบมีประสิทธิภาพ
คำอธิบาย
ฟังก์ชัน MAP ใน Excel จะช่วยสร้างอาร์เรย์ใหม่โดยการแปลงค่าจากอาร์เรย์หรือหลาย ๆ อาร์เรย์ ด้วยการประยุกต์ใช้ฟังก์ชัน LAMBDA เพื่อนิยามวิธีการแปลงค่าของแต่ละตำแหน่งในอาร์เรย์ต้นฉบับ เป็นฟังก์ชันที่ทำให้การคำนวณหรือการเปลี่ยนแปลงข้อมูลเป็นกลุ่มง่ายขึ้นมาก
มีครั้งแรกในเวอร์ชันไหน
365
รูปแบบคำสั่ง (Syntax)
=MAP(array1, lambda_or_array<#>)
Arguments
-
array1 (Required – array)
อาร์เรย์ที่ต้องการแปลงค่า -
lambda_or_array<#> (Required – lambda or array)
ฟังก์ชัน LAMBDA ที่ใช้กำหนดการแปลงค่า ซึ่งอาจจะต้องการอาร์กิวเมนต์เพิ่มเติมหรืออาร์เรย์อื่นที่ต้องการแปลง
ตัวอย่างการใช้งาน (Examples)
-
Formula:
Description: ยกกำลังสองตัวที่มากกว่า 4 ถ้าไม่ถึงก็จะให้เป็นค่าเดิม=MAP(A1:C2, LAMBDA(a, IF(a>4,a*a,a)))
Result:แสดงอาร์เรย์ที่แปลงค่าคือถ้ามีค่าน้อยกว่าหรือเท่ากับ 4 จะเป็นค่าเดิม ถ้ามากกว่าจะยกกำลังสอง -
Formula:
Description: ค้นหาค่าที่ทั้งสองคอลัมน์ในตารางมีค่าสังสรรค์เป็นจริงพร้อมกัน=MAP(TableA[Col1],TableA[Col2],LAMBDA(a,b,AND(a,b)))
Result:แสดง TRUE ถ้าคุณสมบัติตรงสำหรับทั้งสองค่าของแถวเดียวกัน -
Formula:
Description: กรองแถวที่ตรงตามเงื่อนไข จากขนาด 'Large' สีต้องเป็น 'Red'=FILTER(D2:E11,MAP(D2:D11,E2:E11,LAMBDA(s,c,AND(s="Large",c="Red"))))
Result:แสดงอาร์เรย์ของค่าที่ผ่านเงื่อนไขการกรอง -
Formula:
Description: ยกกำลังสองทุกค่าภายในอาร์เรย์=MAP({1, 2, 3, 4, 5}, LAMBDA(x, x^2))
Result:แสดง {1, 4, 9, 16, 25} -
Formula:
Description: บวกค่าจากอาร์เรย์คู่กัน=MAP(A1:A5, B1:B5, LAMBDA(m, n, m+n))
Result:แสดงอาร์เรย์ผลรวมคู่ของแต่ละแถวเช่น (1 + 2), (2 + 3), …
Tips & Tricks
ฟังก์ชัน MAP เหมาะสุดๆ กับการทำงานร่วมกับ LAMBDA เพราะสามารถกำหนดฟังก์ชันใหม่ ๆ เองได้ ควรสร้าง LAMBDA เพื่อแปลงค่าที่สามารถใช้งานได้ทั่วไป
ข้อควรระวัง (Cautions)
ควรตรวจสอบความถูกต้องของการกำหนดอาร์กิวเมนต์ใน LAMBDA ให้เหมาะสม หากมีการส่งผ่านค่าหรืออาร์เรย์ที่ไม่ถูกต้องอาจทำให้เกิด Error #VALUE!
ฟังก์ชันที่เกี่ยวข้อง
References
ขอบคุณที่เข้ามาอ่านนะครับ ❤️
Leave a Reply