Mục Lục
Mỗi kỳ lương, Kế toán tiền lương (Payroll Accountant) phải khấu trừ thuế cho hàng chục nhân viên. Bài viết hướng dẫn cách tính thuế TNCN bằng Excel từ bố cục cột, công thức biểu lũy tiến viết bằng IF, VLOOKUP hoặc SUMPRODUCT, đến ví dụ có số cụ thể. Điểm then chốt là tách tham số ra bảng riêng để file vẫn dùng được khi quy định thay đổi.

Tổng quan nhanh
– Từ kỳ tính thuế 2026, thu nhập từ tiền lương áp biểu lũy tiến 5 bậc từ 5% đến 35%.
– Giảm trừ gia cảnh là 15,5 triệu đồng/tháng cho bản thân và 6,2 triệu đồng cho mỗi người phụ thuộc.
– Công thức tính thuế TNCN nên tham chiếu sheet tham số thay vì gõ số cứng.
Ba ý trên là khung xương của file; các phần dưới đi lần lượt từ tham số, bố cục cột đến công thức.
1. Thông số cần nhập trước khi dựng file
Luật Thuế thu nhập cá nhân số 109/2025/QH15 rút biểu thuế tiền lương, tiền công còn 5 bậc từ kỳ tính thuế 2026. Nghị quyết 110/2025/UBTVQH15 nâng mức giảm trừ gia cảnh từ ngày 01/01/2026. Người lao động đóng BHXH 8%, BHYT 1,5% và BHTN 1% trên tiền lương đóng bảo hiểm, có giới hạn trần.
| Tên tham số (Name) | Giá trị tại 10/2026 | Ghi chú |
|---|---|---|
| GTBanThan | 15.500.000 | Giảm trừ bản thân/tháng |
| GTNPT | 6.200.000 | Mỗi người phụ thuộc đã đăng ký |
| TyLeBHXH_YT | 9,5% | BHXH 8% + BHYT 1,5% |
| TyLeBHTN | 1% | Bảo hiểm thất nghiệp |
| TranBHXH | 50.600.000 | 20 lần lương cơ sở 2,53 triệu đồng, từ 01/7/2026 |
| TranBHTN | Nhập theo vùng | 20 lần lương tối thiểu vùng |
Riêng tháng 1–6/2026, trần BHXH là 46,8 triệu đồng (lương cơ sở 2,34 triệu). Phần giải thích từng mức giảm trừ có trong bài Mức Giảm Trừ Gia Cảnh và Biểu Thuế TNCN: Quy Định Hiện Hành, khi đối chiếu hãy ưu tiên văn bản mới.
2. Bố cục cột trên sheet bảng lương
Sheet tính thuế TNCN nên đi đúng trình tự: tổng thu nhập, trừ khoản được miễn, bảo hiểm, giảm trừ gia cảnh, rồi áp biểu thuế. Mỗi bước một cột giúp người kiểm tra dò lại dễ dàng. Giả sử dữ liệu bắt đầu ở dòng 2:
| Cột | Nội dung | Công thức mẫu (dòng 2) |
|---|---|---|
| B | Tổng thu nhập (gross) | Nhập hoặc liên kết bảng chấm công |
| C | Tiền lương đóng bảo hiểm | Nhập theo hợp đồng lao động |
| D | Khoản được miễn thuế | Nhập kèm chứng từ |
| E | Số người phụ thuộc | Nhập theo hồ sơ đăng ký |
| F | Bảo hiểm người lao động đóng | =MIN(C2,TranBHXH)*TyLeBHXH_YT+MIN(C2,TranBHTN)*TyLeBHTN |
| G | Thu nhập chịu thuế | =B2-D2 |
| H | Thu nhập tính thuế | =MAX(0,G2-F2-GTBanThan-E2*GTNPT) |
| I | Thuế tạm khấu trừ | Xem mục 3 |
Nếu Excel của bạn dùng dấu chấm phẩy làm ký tự phân cách đối số, hãy thay dấu phẩy bằng dấu chấm phẩy trong mọi công thức bên dưới. Hàm MAX(0,...) chặn trường hợp giảm trừ lớn hơn thu nhập, còn MIN ở cột F giữ bảo hiểm không vượt trần.
3. Ba cách viết công thức biểu lũy tiến
Biểu 5 bậc theo tháng: đến 10 triệu đồng chịu 5%, trên 10–30 triệu chịu 10%, trên 30–60 triệu chịu 20%, trên 60–100 triệu chịu 30%, trên 100 triệu chịu 35%. Theo phương pháp rút gọn, số trừ nhanh từng bậc là 0; 0,5; 3,5; 9,5 và 14,5 triệu đồng. Dưới đây là ba cách viết cho cùng kết quả.
IF lồng: nhanh nhưng chứa số cứng
=IF(H2<=10000000,H25%,IF(H2<=30000000,H210%-500000,IF(H2<=60000000,H220%-3500000,IF(H2<=100000000,H230%-9500000,H2*35%-14500000))))
Công thức chạy ngay, nhưng mọi ngưỡng nằm cứng bên trong nên khi biểu thuế đổi bạn phải sửa từng ô.
VLOOKUP dò bảng bậc thuế
Tạo vùng tên BacThue gồm ba cột: ngưỡng dưới (0, 10, 30, 60, 100 triệu, nhập đủ số), thuế suất và số trừ nhanh:
=H2*VLOOKUP(H2,BacThue,2,TRUE)-VLOOKUP(H2,BacThue,3,TRUE)
Tham số TRUE tìm ngưỡng lớn nhất không vượt H2, nên cột ngưỡng phải xếp tăng dần; số 2 lấy thuế suất, số 3 lấy số trừ nhanh.
SUMPRODUCT cộng dồn từng phần
Thêm cột chênh lệch thuế suất so với bậc trước (5%, 5%, 10%, 10%, 5%), đặt tên NguongDuoi và ChenhLech, rồi dùng:
=SUMPRODUCT((H2>NguongDuoi)(H2-NguongDuoi)ChenhLech)
Cách này mô phỏng đúng bản chất lũy tiến từng phần, và gọn khi cách tính thuế TNCN bằng Excel phải đổi sang biểu thuế có số bậc khác. Kỹ năng hàm Excel thường được kiểm tra khi tuyển kế toán; bạn có thể xem yêu cầu thực tế qua việc làm kế toán – kiểm toán đang đăng trên CareerLink.
4. Ví dụ với ba mức lương tháng 10/2026
Giả định doanh nghiệp vùng I, lương đóng bảo hiểm bằng tổng thu nhập, không có khoản được miễn.
| Chỉ tiêu | 20 triệu, 0 NPT | 35 triệu, 1 NPT | 60 triệu, 2 NPT |
|---|---|---|---|
| Bảo hiểm (cột F) | 2.100.000 | 3.675.000 | 5.407.000 |
| Giảm trừ gia cảnh | 15.500.000 | 21.700.000 | 27.900.000 |
| Thu nhập tính thuế (cột H) | 2.400.000 | 9.625.000 | 26.693.000 |
| Thuế tạm khấu trừ (cột I) | 120.000 | 481.250 | 2.169.300 |
Ở mức 60 triệu, BHXH và BHYT chỉ tính trên trần 50,6 triệu (4.807.000 đồng), cộng BHTN 600.000 đồng. Thu nhập tính thuế 26.693.000 nằm ở bậc 2, nhân 10% rồi trừ 500.000 ra 2.169.300 đồng. Ba dòng này dùng làm dữ liệu thử cho file của bạn.
Một file tính thuế đáng tin là file mà người khác mở ra, đổi một tham số và hiểu ngay con số nào thay đổi theo.
5. Lỗi hay gặp khi tính thuế TNCN trên bảng tính
Phần lớn sai lệch đến từ dữ liệu đầu vào chứ không phải công thức lũy tiến. Với ví dụ 60 triệu ở mục 4, nếu quên trần thì bảo hiểm thành 6.300.000 đồng và thuế giảm 89.300 đồng mỗi tháng. Các lỗi khác thường nằm ở phụ cấp và người phụ thuộc.
Lưu ý
– Quên áp trần khiến bảo hiểm bị trừ quá mức và số thuế thấp hơn thực tế.
– Cộng nhầm khoản phụ cấp được miễn vào thu nhập chịu thuế làm thuế bị tính dư.
– Khai người phụ thuộc chưa đăng ký hợp lệ khiến giảm trừ bị loại khi quyết toán.
– Dùng VLOOKUP với cột ngưỡng chưa xếp tăng dần cho kết quả sai bậc.
Cả bốn lỗi này phát hiện được nếu thêm một cột so với cách tính tay ở vài dòng mẫu.

6. Cập nhật file khi mức giảm trừ hoặc biểu thuế thay đổi
Trong năm 2026 biểu thuế từ 7 bậc còn 5 bậc, giảm trừ gia cảnh tăng, trần bảo hiểm đổi giữa năm. File nhét số cứng vào công thức phải sửa hàng trăm ô và dễ sót. Cách bền vững là đưa mọi con số pháp lý về sheet ThamSo, đặt tên vùng bằng Name Manager (Ctrl+F3), còn sheet bảng lương chỉ tham chiếu tên. Khi quy định đổi, bạn chỉ sửa sheet tham số và ghi số hiệu văn bản bên cạnh.
Lời khuyên khi tổ chức sheet tham số
– Bạn nên thêm cột “Hiệu lực từ” để lưu nhiều bộ tham số theo giai đoạn.
– Bạn có thể dùng XLOOKUP theo ngày kỳ lương để tự chọn đúng trần bảo hiểm.
– Bạn hãy khóa sheet tham số bằng Protect Sheet để tránh sửa nhầm.
Ba thao tác này giúp một file dùng qua nhiều lần đổi chính sách mà không phải dựng lại.
Chẳng hạn, ô TranBHXH viết =XLOOKUP(NgayKyLuong,HieuLucTu,MucTran,,-1), với -1 lấy mốc hiệu lực liền trước ngày kỳ lương.
7. Câu hỏi thường gặp
1. Nên dùng IF lồng hay VLOOKUP để tính thuế TNCN? IF lồng hợp file dùng tạm; VLOOKUP hoặc SUMPRODUCT dễ cập nhật hơn khi biểu thuế đổi.
2. Có thể dùng Google Sheets thay cho Excel không? Có, các hàm trong bài hoạt động tương tự trên Google Sheets.
3. Thuế tạm khấu trừ hằng tháng có phải số thuế cuối cùng không? Không hẳn; số thuế cả năm được xác định khi quyết toán.
Một bảng tính thuế tốt cần cấu trúc rõ ràng hơn là công thức phức tạp. Nắm cách tính thuế TNCN bằng Excel theo trình tự thu nhập, bảo hiểm có trần, giảm trừ gia cảnh rồi biểu 5 bậc, kết hợp sheet tham số đặt tên, bạn có file dùng được qua nhiều đợt đổi chính sách. Hãy dựng thử ba dòng ví dụ ở mục 4 và so kết quả trước khi áp dụng cho bảng lương thật.
Bài viết mang tính tham khảo; mức giảm trừ, biểu thuế và trần bảo hiểm có thể thay đổi, hãy đối chiếu văn bản hiện hành.
Minh An



