การคำนวณเงินสมทบเพื่อนำจ่ายประกันสังคม
(เฉลยแบบทดสอบทักษะการใช้สูตรและฟังก์ชัน Excel ข้อที่ 1)
โจทย์ข้อที่ 1 ในเงื่อนไขของการคำนวณ เงินสมทบผู้ประกันตน ที่จะต้องนำส่งประกันสังคม มีดังนี้
- ผู้ที่ได้รับค่าจ้างต่ำกว่า 1,650 บาท ให้คำนวณจาก 1,650 บาท และผู้ที่ได้รับค่าจ้างเกินกว่า 15,000 บาท ให้คำนวณจาก 15,000 บาท
- เงินสมทบแต่ละคน หากมีเศษสตางค์ตั้งแต่ 50 สตางค์ขึ้นไป ให้ปัดเป็น 1 บาท ถ้าน้อยกว่า 50 สตางค์ให้ปัดทิ้ง
- อัตราเงินสมทบปัจจุบัน อยู่ที่ 5%
คำสั่ง
- จงคำนวณหาเงินสมทบสำหรับผู้ประกันตน ลงในตารางด้านล่าง (กำหนดอัตราค่าจ้างเอง)
- เมื่อมีการเปลี่ยนแปลงอัตราค่าจ้าง เงินสมทบที่ได้ต้องเปลี่ยนไปโดยอัตโนมัติ ภายใต้เงื่อนไขที่โจทย์กำหนด
- ให้มีข้อความเป็นตัวหนังสือ (อยู่ภายในเครื่องหมายวงเล็บ) กำกับจำนวนเงินสมทบด้วย
- หากในช่อง "อัตราค่าจ้าง" ไม่มีการใส่ตัวเลข, ในช่อง "เงินสมทบ" และช่อง "ตัวหนังสือ" จะต้องไม่แสดงค่าหรือข้อความใดๆ
ที่เซล D14 สามารถพิมพ์สูตรได้หลายแบบ ดังนี้
แบบที่ 1 สำหรับผู้ที่ไม่ค่อยถนัดในการตั้งเงื่อนไขด้วยฟังก์ชัน IF ก็สามารถใช้ฟังก์ชัน MIN และ MAX ก็ได้ครับ
อ่ะ..หลายคนทำหน้าสงสัย ใช้ฟังก์ชัน MIN และ MAX หาเงินสมทบประกันสังคมได้ด้วยเหรอ ก็ที่เคยเรียนมา อาจารย์สอนให้ใช้เพื่อหาจำนวนต่ำสุด กับจำนวนสูงสุด เท่านั้น ไม่เคยรู้เลยว่ายังใช้ทำอย่างอื่นได้ด้วย
จำไว้เลยครับว่า การจะหาค่าอะไรก็ตาม ถ้าไม่น้อยกว่า.. ใช้ MAX, ถ้าไม่สูงกว่า.. ใช้ MIN
ดังนั้น ถ้ารายได้ไม่น้อยกว่า 1650 เราจะเขียนสูตรว่า MAX(1650, รายได้) หรือถ้ารายได้ไม่สูงกว่า 15000 เราจะเขียนสูตรว่า MIN(15000, รายได้) ดังนั้น รายได้ที่จะนำมาคิด เพื่อหาเงินสมทบ จึงเขียนเป็นสูตรได้ว่า MIN(15000, MAX(1650, รายได้) )*5%
และจากที่โจทย์กำหนดว่า เงินสมทบแต่ละคน หากมีเศษสตางค์ตั้งแต่ 50 สตางค์ขึ้นไป ให้ปัดเป็น 1 บาท ถ้าน้อยกว่า 50 สตางค์ให้ปัดทิ้ง เราจึงใช้ฟังก์ชัน ROUND เข้ามาช่วย สูตรจึงเป็นดังนี้
=ROUND(MIN(15000, MAX(1650, รายได้) )*5%, 0) หรือ =ROUND(MIN(15000, MAX(1650, C14) )*5%, 0)
แบบที่ 2 เนื่องจากเวลาเราเขียนสูตรนั้น เป็นไปได้ที่อาจจะเขียนสูตรรอไว้ก่อน โดยที่ในแบบฟอร์มนั้นๆ อาจจะยังไม่ได้ใส่ตัวเลขรายได้ ดังนั้น ถ้า MAX(1650, รายได้) โดยที่รายได้ยังไม่ได้ใส่ ก็หมายถึง รายได้เป็นศูนย์
จากสูตรในแบบที่ 1 ถ้ารายได้ไม่มี หรือรายได้เป็นศูนย์ ซึ่งก็หมายถึงน้อยกว่า 1650 นั่นเอง สูตรก็จะนำเอา 1650 มาคิดอัตราเงินสมทบให้ทันที ทั้งๆ ที่ยังไม่มีรายได้ (ทดลองพิมพ์สูตรในช่องเงินสมทบตามวิธีแรก เสร็จแล้วลบตัวเลขรายได้ออกไป จะเห็นว่าเงินสมทบได้ผลลัพธ์เป็น 83)
ดังนั้น เพื่อไม่ให้โชว์ตัวเลขใดๆ ในช่องเงินสมทบ ในกรณีที่ยังไม่ใส่จำนวนรายได้ เราก็จะพิมพ์สูตร ดังนี้
=ROUND(MIN(15000, MAX(1650,C14))*5%*(C14<>0), 0)
หรือใช้ฟังก์ชัน IF ตรวจดูก่อนว่ารายได้ C14 มีข้อมูลหรือไม่ ดังนี้
=IF(C14="","", ROUND(MIN(15000, MAX(1650,C14))*5%, 0))
แบบที่ 3 สำหรับคนที่ชอบตรวจสอบเงื่อนไขโดยการใช้ฟังก์ชัน IF ผมก็มีทางเลือกให้เช่นกัน ซึ่งสูตรก็จะยาวกว่าการใช้ MIN และ MAX ดังนี้
=ROUND(IF(C14>=15000, 15000*5%, IF(C14<=1650, 1650*5%, C14*5%)), 0)
หรือถ้าจะตรวจสอบดูก่อนว่า ตัวเลขรายได้ใส่มารึยัง ก็เขียนสูตรดังนี้
=IF(C14="","", ROUND(IF(C14>=15000, 15000*5%, IF(C14<=1650, 1650*5%, C14*5%)), 0))
เป็นงัยครับ ยาวดีมั๊ย ฮ่าๆๆๆ
ส่วนที่ E14 ต้องการให้มีข้อความเป็นตัวหนังสือ (อยู่ภายในเครื่องหมายวงเล็บ) กำกับจำนวนเงินสมทบด้วย ให้พิมพ์สูตรดังนี้
="("&BAHTTEXT(D14)&")"
และถ้าต้องการตรวจสอบว่า รายได้ในเซล C14 มีข้อมูลแล้วหรือยัง ถ้ายัง.. ก็ไม่ต้องแสดงข้อความใดๆ ก็ปรับสูตรเป็นดังนี้
=IF(C14="", "", "("&BAHTTEXT(D14)&")" )
เป็นอย่างไรบ้างครับ ทำได้มั๊ย? หรือใครใช้สูตรอื่น ก็มาแบ่งปันกันได้ครับ เพราะการแก้ปัญหาใดๆ ใน Excel นั้น สามารถมีได้หลายวิธีการ สุดแต่ประสบการณ์ในการใช้งานของผู้ใช้แต่ละท่าน
Create Date : 31 พฤษภาคม 2551 |
|
12 comments |
Last Update : 1 กุมภาพันธ์ 2552 13:53:16 น. |
Counter : 42260 Pageviews. |
|
|
|