สูตรลัด SumProduct ใช้หายอดรวมของผลิตภัณฑ์

สมมุติว่าในตารางมีจำนวนสินค้าและราคาตามนี้ ให้หามูลค่าสินค้าทั้งหมด

สินค้า 1 ชิ้นราคาชิ้นละ 10 บาท
สินค้า 2 ชิ้นราคาชิ้นละ 20 บาท
สินค้า 3 ชิ้นราคาชิ้นละ 30 บาท
สินค้า 4 ชิ้นราคาชิ้นละ 40 บาท
สินค้า 5 ชิ้นราคาชิ้นละ 50 บาท

ถ้าใช้ SumProduct ไม่เป็น ก็ต้องสร้างสูตรแบบนี้ใช่ไหม

=(1x10)+(2x20)+(3x30)+(4x40)+(5x50)
=10+40+90+160+250
รวมกันเท่ากับ 550 บาท

ตัวเลข 550 นี้พูดตามภาษานักคำนวณก็คือ "ยอดรวมของผลคูณ" =SumProduct
Sum แปลว่า รวม
Product แปลว่า คูณ ไม่ได้แปลว่าผลิตภัณฑ์หรอกครับ

สูตร SumProduct ทำหน้าที่ตามชื่อของเขานั่นคือ หายอดรวมของผลคูณ โดยมีโครงสร้างสูตรแรกตามภาพ

👉 =SumProduct( ตารางของจำนวน, ตารางของราคาต่อหน่วย )

SumProduct

สูตรนี้ทำหน้าที่จับจำนวนมาคูณกับราคา ตามลำดับที่ใส่ไว้ในตาราง คูณกันทีละลำดับเสร็จแล้วจึงนำยอดที่คูณกันได้ทั้งหมดมาบวกกัน

🧐 ในวงเล็บของสูตร SumProduct จะใส่พื้นที่ตารางได้เยอะแยะถึง 255 ตาราง โดยต้องใส่เครื่องหมายคอมมา , แยกแต่ละตารางไว้ และมีเงื่อนไขสำคัญกว่าพื้นที่แต่ละตารางต้องมีขนาดเท่ากัน (Same Dimension) เพื่อนำตำแหน่งตัวเลขตามลำดับที่ตรงกันมาใช้

😎 ส่วนใหญ๋ที่สร้างสูตรแล้วพบว่า error มักมาจากใส่พื้นที่ตารางที่มีขนาดไม่เท่ากัน หรือมีบางค่าคูณกันไม่ได้ เช่น บางค่าไม่ใช่เลขแต่เป็นตัวอักษร


🧐 SumProduct สามารถใช้แทนสูตร SumIF หรือ SumIFS หรือแม้แต่ CountIF ก็ยังได้ เช่น

=SumIF( ตารางเก็บรหัส, "a001", ตารางจำนวน )

เปลี่ยนมาเป็น

=SumProduct( (ตารางเก็บรหัส="a001") * ตารางจำนวน ) หรือ
=SumProduct( --(ตารางเก็บรหัส="a001") , ตารางจำนวน )

🧐 ตารางเก็บรหัส="a001" เป็นเงื่อนไขที่ใช้ตรวจสอบตำแหน่งของรหัส a001 ว่าอยู่ตรงไหนตามภาพนี้ ซึ่งจะคืนค่าออกมาเป็น

TRUE
FALSE
TRUE
FALSE
FALSE

พอจับมาคูณกับตารางจำนวน การคูณจะกระตุ้นให้ True = 1 และ False = 0 จากนั้นเมื่อนำมาคูณกับตัวเลข ก็จะเก็บเฉพาะตำแหน่งที่เป็น True ไว้จึงตอบว่า a001 มียอดรวมเท่ากับ 400

TRUE x 100 = 1 x 100 = 100
FALSE x 200 = 0 x 200 = 0
TRUE x 300 = 1 x 300 = 300
FALSE x 400 = 0 x 400 = 0
FALSE x 500 = 0 x 500 = 0

หรือถ้าใช้ลบลบ ก็จะกระตุ้นให้ True = 1 และ False = 0 เช่นกัน เงื่อนไข

  • - - (ตารางเก็บรหัส="a001") จะแปลงค่าออกมาเป็น

1
0
1
0
0

😍 ที่พิเศษมากๆ สูตร SumProduct นี้ยังทำหน้าที่เทียบเท่ากับสูตร CountIF ได้ด้วย โดยใช้สูตรตามนี้

=SumProduct( (ตารางเก็บรหัส="a001") * 1 ) หรือ
=SumProduct( --(ตารางเก็บรหัส="a001") )

เพราะ เลข 1 0 1 0 0 ที่ได้จาก True False นั้นพอยกมารวมกันก็จะนับว่าตำแหน่งรายการ a001 มี 2 ตำแหน่งนั่นเอง

 

 

Related Articles

© Copyright 1999

สงวนลิขสิทธิ์ตามกฎหมาย

ห้ามนำข้อความหรือส่วนหนึ่งส่วนใดของบทความหรือวิดีโอหรือรูปภาพไปใช้เพื่อการค้าขาย หรือเพื่อประโยชน์ส่วนตัว

อนญาตให้นำไปใช้เพื่อสาธารณประโยชน์โดยขอให้ระบุที่มาและชื่อผู้เขียนกำกับไว้ด้วยเสมอ

ลิงก์เว็บ Excel Expert Training

เว็บสำหรับ เรียนออนไลน์

เว็บสำหรับ เรียนแบบกลุ่ม-ส่วนตัว

ติดตามข่าวสารได้จาก facebook

ถามปัญหาได้ที่ กลุ่มคนรัก Excel

และไลน์กลุ่ม Excel Expert Group

ที่อยู่และการติดต่อ

สมเกียรติ ฟุ้งเกียรติ 7/1 รามคำแหง ซอย 35 หัวหมาก บางกะปิ กทม 10240 โทร 097-140-5555, 02-718-9331

Excel@ExcelExpertTraining.com

sfk234x234