ตอบสั้นๆ ก่อน: ไฟล์เงินเดือนใน Excel ต้องมีอย่างน้อย 8 คอลัมน์ที่เป็นสูตร เรียงตามลำดับนี้: ค่าจ้างต่อชั่วโมง → ค่า OT → รวมรายได้ → ฐานประกันสังคม → ประกันสังคม → รายได้ทั้งปีที่ประมาณ → ภาษี → ยอดสุทธิ ด้านล่างคือสูตรทุกคอลัมน์ที่ใช้ได้ตั้งแต่ Excel 2016 ขึ้นไป ไม่ใช้ฟังก์ชันที่มีเฉพาะ Microsoft 365
อัปเดตล่าสุด: ตุลาคม 2569 · อัตราประกันสังคมและภาษีเป็นของปี 2569 ใส่ไว้ในหน้าตั้งค่าเพื่อแก้ที่เดียว
ผังคอลัมน์
| คอลัมน์ | เนื้อหา | กรอกเอง / สูตร |
|---|---|---|
| B | รหัสพนักงาน | กรอก |
| C | ประเภท (รายเดือน / รายวัน) | กรอก |
| D | เงินเดือน หรือค่าแรงต่อวัน | กรอก |
| E | วันที่ได้ค่าจ้าง (รายวัน) | กรอก |
| F | ชั่วโมง OT วันทำงาน | กรอก |
| G | รายได้ประจำ (ค่าตำแหน่ง เบี้ยเลี้ยงประจำ) | กรอก |
| H | โบนัส / รายได้ครั้งคราว | กรอก |
| I | ค่าจ้างต่อชั่วโมง | สูตร |
| J | ค่าจ้างเดือนนี้ | สูตร |
| K | ค่า OT | สูตร |
| L | รวมรายได้ | สูตร |
| M | ฐานประกันสังคม | สูตร |
| N | ประกันสังคม | สูตร |
| O | ภาษี | สูตร |
| P | ยอดจ่ายสุทธิ | สูตร |
หน้าตั้งค่า: ตั้งค่า!B1 ชั่วโมงทำงานต่อวัน (8) · B2 อัตราประกันสังคม (5%) · B3 เพดาน (17,500) · B4 ตัวคูณ OT (1.5)
สูตรทีละคอลัมน์ (แถว 5)
I ค่าจ้างต่อชั่วโมง =IF(C5="รายเดือน",D5/30,D5)/ตั้งค่า!$B$1
J ค่าจ้างเดือนนี้ =IF(C5="รายเดือน",D5,D5*E5)
K ค่า OT =ROUND(I5*ตั้งค่า!$B$4*F5,2)
L รวมรายได้ =J5+K5+G5+H5
M ฐานประกันสังคม =J5+G5
N ประกันสังคม =IF(M5<=0,0,ROUND(MEDIAN(1650,ตั้งค่า!$B$3,M5)*ตั้งค่า!$B$2,0))
P ยอดจ่ายสุทธิ =ROUND(L5-N5-O5,2)
ทำไมแต่ละสูตรเป็นแบบนี้:
- I รายเดือนหาร 30 ก่อนหารชั่วโมง รายวันหารชั่วโมงอย่างเดียว อ่านเหตุผลใน คิดโอทียังไง
- M ฐานประกันสังคมไม่รวม OT (K) และโบนัส (H) อ่านใน ประกันสังคมหักเท่าไหร่
- N
MEDIAN(1650, เพดาน, ฐาน)ได้ค่ากลางเสมอ คุมทั้งขั้นต่ำและเพดานในสูตรเดียว
สูตรภาษี (คอลัมน์ O)
ภาษีต้องคิดจากรายได้ทั้งปี ไม่ใช่รายได้เดือนเดียว แบบง่ายที่สุดสำหรับคนที่รายได้คงที่ทั้งปี:
เงินได้สุทธิทั้งปี =MAX(0,(J5+G5)*12-MIN((J5+G5)*12*0.5,100000)-60000-N5*12)
ภาษีทั้งปี =SUMPRODUCT(--(Q5>{150000,300000,500000,750000,1000000,2000000,5000000}),Q5-{150000,300000,500000,750000,1000000,2000000,5000000},{0.05,0.05,0.05,0.05,0.05,0.05,0.05})
O ภาษีเดือนนี้ =ROUND(R5/12,2)
Q5 เงินได้สุทธิ R5 ภาษีทั้งปี สูตรนี้ไม่รองรับ เดือนที่มีโบนัส/OT ก้อนใหญ่ คนเข้า-ออกกลางปี และการปรับยอดสะสม ถ้ามีกรณีเหล่านี้ต้องใช้วิธีหักแบบสะสม อ่านใน ภาษีเงินเดือนคิดยังไง และ หักภาษีโบนัส
สิ่งที่สูตรชุดนี้ยังไม่มี
ชุดสูตรด้านบนพอสำหรับบริษัทที่พนักงานรายได้คงที่ทุกเดือน ถ้าต้องการใช้ทั้งปีจริง ยังต้องเพิ่ม:
- การคิดสัดส่วนคนเข้า-ออกกลางเดือน (อ่านวิธีคิด)
- ภาษีแบบสะสมที่รองรับ OT โบนัส และเดือนสุดท้ายปรับยอด
- OT วันหยุด 2 อัตรา และค่าจ้างวันหยุดนักขัตฤกษ์ของรายวัน
- หักขาดงานของรายเดือน (อ่านวิธีคิด)
- กองทุนสงเคราะห์ลูกจ้างสำหรับกิจการ 10 คนขึ้นไป (อ่านวิธีคิด)
- สลิป ใบสรุปเงินเดือน ยอดสะสมทั้งปี และ 50 ทวิ ที่ดึงจาก 12 เดือน
ข้อควรระวังเรื่อง Excel
- ใส่อัตราทุกตัวในหน้าตั้งค่า ห้ามพิมพ์ตัวเลขในสูตร
- ล็อกการอ้างอิงด้วย
$ก่อนลากสูตรลง - ปิดยอดเดือนที่จ่ายแล้วด้วยการวางค่า ก่อนแก้อัตราหรือเงินเดือน
- ถ้าต้องใช้กับ Excel รุ่นเก่า หลีกเลี่ยง
LETFILTERXLOOKUPซึ่งมีเฉพาะ Microsoft 365 / Excel 2021 ขึ้นไป
คู่มือเงินเดือนครบทุกเรื่องสำหรับเจ้าของธุรกิจที่ทำเงินเดือนเอง: ทำเงินเดือนด้วย Excel หรือโปรแกรมสำเร็จรูป
ถ้าไม่อยากต่อสูตรทั้ง 6 ข้อเอง ไฟล์ Sheetable Payroll ทำครบทั้งระบบ: เงินเดือน OT ทุกอัตรา ประกันสังคม กองทุน ภาษีแบบสะสม สลิปสูงสุด 100 ใบ ข้อมูลนำส่งรายเดือน และ 50 ทวิ สูตรออกแบบให้ใช้ได้ตั้งแต่ Excel 2016 บน Windows
คำถามที่พบบ่อย
ใช้ MEDIAN ของ 1,650 เพดาน 17,500 และฐานค่าจ้าง แล้วคูณ 5% และปัดเป็นบาท ฐานคือค่าจ้างไม่รวม OT และโบนัส MEDIAN คุมทั้งขั้นต่ำและเพดานในสูตรเดียว
ใช้ SUMPRODUCT กับขั้นเงินได้ 150,000 ถึง 5,000,000 และอัตราส่วนเพิ่ม 5% ทุกขั้น จะได้ภาษีทั้งปีในเซลล์เดียว ใช้ได้ตั้งแต่ Excel 2016
รายวันคิดค่าจ้างเดือนนี้จากค่าแรงต่อวันคูณวันที่ได้ค่าจ้าง และหาค่าจ้างต่อชั่วโมงจากค่าแรงหารชั่วโมงทำงานต่อวัน ไม่หาร 30
แหล่งข้อมูล
- พระราชบัญญัติคุ้มครองแรงงาน พ.ศ. 2541 มาตรา 61 และ 68
- สำนักงานประกันสังคม: อัตราเงินสมทบและเพดานค่าจ้าง ปี 2569
- กรมสรรพากร: อัตราภาษีเงินได้บุคคลธรรมดา
บทความนี้เป็นข้อมูลทั่วไปเพื่อช่วยสร้างไฟล์คำนวณ ไม่ใช่คำปรึกษาทางกฎหมายหรือภาษี
