สูตร Let ช่วยทำให้ a*(b+c) ดีกว่า a*b+a*c ตรงไหน
เดิมสูตร =a*b +a*c จะคิด 3 ครั้ง
ปรับใหม่ =a*(b+c) จะคิด 2 ครั้ง
สั่งให้ Copilot สร้างตัวอย่างตามแบบปกติกับแบบใช้ Let
ตัวอย่างเปรียบเทียบบทคำนวณปกติ vs LET
สมมติในเซลล์
- A1 = 10
- B1 = 5
- C1 = 3
สูตรปกติ (คำนวณซ้ำ)
`
=A1 * B1
+A1 * C1
`
- คำนวณ A1*B1 = 50
- คำนวณ A1*C1 = 30
- บวกผลลัพธ์ 50+30 = 80
- มี 2 ครั้งการคูณ และ 1 ครั้งการบวก รวม 3 การคำนวณ
สูตรใช้ LET
`
=LET(
a, A1,
sumBC, B1 + C1,
a * sumBC
)
`
- กำหนดตัวแปร a = A1 (10)
- คำนวณ sumBC = B1 + C1 = 8
- คูณ a sumBC = 10 8 = 80
- มี 1 ครั้งการบวก และ 1 ครั้งการคูณ รวม 2 การคำนวณ
---
สรุปเปรียบเทียบ
สูตรในเซลล์
=A1B1 + A1C1
vs
=LET(a,A1,sumBC,B1+C1,a*sumBC)
50 + 30 = 80 (2 คูณ + 1 บวก)
vs
8 * 10 = 80 (1 บวก + 1 คูณ)
จำนวน operation | 3 vs 2
การอ้างอิง A1 | 2 ครั้ง vs 1 ครั้ง
---
การใช้ LET จึงช่วยลดงานคำนวณซ้ำ – ยิ่งสูตรซับซ้อนหรือเรียกฟังก์ชันหนักๆ หลายครั้ง ความต่างจะยิ่งชัดเจนขึ้นครับ
เคล็ดลับการใช้ Let ซ้อนใน Lambda เอา Lambda ตั้งชื่อ Formula Name
จากสมการ =a(b+c)
ตามภาพ ใช้สูตร Let เพื่อตั้งชื่อตัวแปรให้ a รับค่ามาจาก A1 และ ชื่อตัวแปร sumBC รับค่ามาจาก B1+C1 จากนั้นหาผลลัพธ์ได้จาก a * sumBC
=LET(a, A1,
sumBC, B1+C1,
a * sumBC)
การสร้างสูตรให้อ่านได้ง่าย ควรกดปุ่ม ALT+Enter เพื่อแยกแต่ละขั้นออกเป็นแต่ละบรรทัด และตั้งชื่อตัวแปรให้สื่อถึงความหมายจะได้เข้าใจได้ง่ายขึ้น
แม้สูตร Let นี้จะช่วยทำให้ Excel ลดขั้นตอนการคำนวณได้ดีกว่าสมการ =ab+ac แต่ยังมีข้อจำกัดว่าสูตรยังต้องอ้างอิงจากเซลล์ A1, B1, C1 ไว้เสมอ ไม่สามารถนำสูตรไปใช้กับโครงสร้างอื่น
สูตร Lamba จะช่วยทำให้สูตร Let นำไปใช้ทำงานได้ทุกที่ โดยลอกสูตรนี้ ไปใส่ลงในคำสั่ง Name manager เพื่อสร้างเป็น Formula Name
ตั้งชื่อสูตร
TotalCost
=LAMBDA( a, b, c, LET(sumBC, b+c, a*sumBC) )
จากนั้นเมื่อต้องการใช้ให้กดปุ่ม F3 แล้วสร้างสูตรตามนี้ลงไป
=TotalCost(A3,B3,C3)
หรือใช้ตำแหน่งเซลล์ที่ลงก์มาจากที่ใดก็ได้
=TotalCost(A12,B13,C14)
ถ้าไม่อยากนำ =LAMBDA(a,b,c,LET(sumBC,b+c,a*sumBC) ไปตั้งชื่อ ต้องใช้แบบนี้
=LAMBDA(a,b,c,LET(sumBC,b+c,a*sumBC))(A12,B13,C14)
Download ตัวอย่างได้จาก https://drive.google.com/file/d/1ocG7BMocTgB7iqZfqJz9QsdJBQKl4e7X/view?usp=sharing
หวังว่าตัวอย่างนี้จะช่วยทำให้เข้าใจ 2 สูตรนี้ได้ง่ายขึ้นนะครับว่ามีหลักการอย่างไร
====================================
No comments:
Post a Comment
Note: Only a member of this blog may post a comment.