Quản lý công nợ bằng Excel: 4 bước từ A-Z (kèm file mẫu miễn phí)

Bán chịu là chuyện thường ngày ở cửa hàng vật liệu xây dựng, tạp hóa, điện nước… nhưng ghi nợ vào sổ tay thì sớm muộn cũng có ngày quên ghi, ghi nhầm hoặc cãi nhau với khách vì lệch số. Bài viết này hướng dẫn bạn quản lý công nợ bằng Excel theo cách mình vẫn dạy học viên: chỉ 3 sheet, vài công thức SUMIFS – INDEX/MATCH, nhập 1 lần là biết ngay khách nào còn nợ bao nhiêu, ai đã vượt hạn mức.

✅ Có sẵn file mẫu: cuối bài có link tải file Excel quản lý công nợ đã điền công thức và dữ liệu mẫu, mở ra dùng được ngay. Tải file mẫu ↓

Quản lý công nợ bằng Excel – bảng tổng hợp công nợ khách hàng có công thức SUMIFS

1. Vì sao nên quản lý công nợ bằng Excel thay sổ tay?

Sổ tay thì quen tay, nhưng khi số khách nợ lên vài chục người, mỗi người mua chịu – trả dần nhiều lần trong tháng, bạn sẽ gặp đúng mấy chuyện này:

  • Muốn biết một khách còn nợ bao nhiêu phải lật từng trang cộng trừ bằng máy tính.
  • Cuối tháng không biết tổng tiền đang nằm ngoài khách là bao nhiêu để xoay vốn nhập hàng.
  • Khách hỏi lại “tôi nợ những đơn nào?” – không có bảng kê rõ ràng để đối chiếu.
  • Sổ ướt, rách, mất là mất luôn toàn bộ công nợ.

Quản lý công nợ bằng Excel giải quyết gọn cả 4 việc: tự cộng trừ, lọc theo khách trong 1 giây, in bảng kê gửi khách, và sao lưu được nhiều bản.

2. Cấu trúc file quản lý công nợ bằng Excel: 3 sheet là đủ

Nhiều người làm mỗi khách một sheet – vài tháng sau file có 50 sheet, rất khó tổng hợp. Cách đúng là tách dữ liệu theo vai trò:

📇
DanhMucKH
Thông tin cố định của khách: mã, tên, SĐT, địa chỉ, nợ đầu kỳ, hạn mức nợ.
📝
NhatKy
Mỗi lần bán chịu hoặc thu tiền ghi 1 dòng. Đây là sheet nhập hằng ngày.
📊
TongHop
Tự động tính phát sinh, đã thu, còn nợ của từng khách. Không nhập gì.
💡 Nguyên tắc vàng: nhập liệu ở một nơi (NhatKy), báo cáo ở nơi khác (TongHop). Nhờ vậy dù có 1.000 dòng giao dịch, bảng tổng hợp vẫn đúng mà không phải sửa công thức.

3. Bước 1 – Lập danh mục khách hàng

Tạo sheet DanhMucKH, mỗi khách 1 dòng. Cột quan trọng nhất là Mã KH – mã phải không trùng, ngắn, dễ gõ (KH01, KH02…). Hai cột số gồm Nợ đầu kỳ (số nợ cũ còn lại trước khi bắt đầu dùng file) và Hạn mức nợ (mức tối đa bạn cho khách nợ).

📗 File-quan-ly-cong-no.xlsx
A5fx  KH01
A B C D E F
4 Mã KH Tên khách hàng Số điện thoại Địa chỉ Nợ đầu kỳ Hạn mức nợ
5 KH01 Cửa hàng VLXD Minh Phát 0901 234 501 125 Lê Văn Việt, TP. Thủ Đức, TP.HCM 5.000.000 30.000.000
6 KH02 Tạp hóa Cô Lan 0902 345 602 48 Nguyễn Trãi, Quận 1, TP.HCM 0 10.000.000
7 KH03 Điện nước Hoàng Long 0903 456 703 210 Phan Văn Trị, Quận Gò Vấp, TP.HCM 2.500.000 20.000.000
8 KH07 Chị Hạnh – shop Bình Thạnh 0907 890 107 301 Xô Viết Nghệ Tĩnh, Quận Bình Thạnh, TP.HCM 1.200.000 5.000.000
HuongDanDanhMucKHNhatKyTongHop

Hình 1: Sheet DanhMucKH – mỗi khách một dòng, mã KH không trùng

📌 Mẹo: Chọn cột A → Data → Data Validation → Custom, nhập công thức =COUNTIF($A:$A,A1)=1 để Excel báo lỗi ngay khi bạn gõ trùng mã khách.

4. Bước 2 – Ghi nhật ký công nợ hằng ngày

Sheet NhatKy là nơi bạn làm việc mỗi ngày. Mỗi lần bán chịu thì ghi số tiền vào cột Phát sinh nợ, mỗi lần khách trả tiền thì ghi vào cột Đã thu. Bạn chỉ nhập 5 cột: Ngày, Mã KH, Diễn giải, Phát sinh nợ, Đã thu – hai cột còn lại Excel tự tính.

📗 File-quan-ly-cong-no.xlsx
G8fx  =IF(B8=””,””,IFERROR(INDEX(DanhMucKH!$E$5:$E$200,MATCH(B8,DanhMucKH!$A$5:$A$200,0)),0)+SUMIFS($E$5:E8,$B$5:B8,B8)-SUMIFS($F$5:F8,$B$5:B8,B8))
A B C D E F G
4 Ngày Mã KH Tên khách hàng Diễn giải Phát sinh nợ Đã thu Dư nợ sau GD
5 01/09/2026 KH01 Cửa hàng VLXD Minh Phát Bán xi măng, thép – HĐ 0101 18.500.000 23.500.000
6 02/09/2026 KH03 Điện nước Hoàng Long Bán ống nước – HĐ 0102 6.200.000 8.700.000
7 03/09/2026 KH02 Tạp hóa Cô Lan Bán hàng tạp hóa – HĐ 0103 4.300.000 4.300.000
8 05/09/2026 KH01 Cửa hàng VLXD Minh Phát Thu tiền mặt 10.000.000 13.500.000
HuongDanDanhMucKHNhatKyTongHop

Hình 2: Sheet NhatKy – dòng xanh là lần thu tiền, dư nợ KH01 giảm từ 23,5 triệu còn 13,5 triệu

4.1. Tạo danh sách xổ xuống cho cột Mã KH

Chọn vùng B5:B200 → Data → Data Validation → Allow: List → Source: =DanhMucKH!$A$5:$A$200. Từ giờ chỉ cần bấm chọn mã, không sợ gõ sai.

4.2. Tự hiện tên khách bằng INDEX + MATCH

Tại ô C5 nhập công thức rồi kéo xuống:

=IF(B5=””,””,IFERROR(INDEX(DanhMucKH!$B$5:$B$200,MATCH(B5,DanhMucKH!$A$5:$A$200,0)),”Sai mã KH”))

MATCH tìm vị trí mã KH trong danh mục, INDEX lấy tên ở đúng vị trí đó. Nếu mã không có trong danh mục, ô sẽ báo “Sai mã KH” để bạn kiểm tra lại.

4.3. Dư nợ sau mỗi giao dịch (số dư lũy kế)

Cột G cho biết ngay sau giao dịch đó khách còn nợ bao nhiêu – rất tiện khi khách gọi hỏi. Công thức tại G5:

=IF(B5=””,””,IFERROR(INDEX(DanhMucKH!$E$5:$E$200,MATCH(B5,DanhMucKH!$A$5:$A$200,0)),0)+SUMIFS($E$5:E5,$B$5:B5,B5)-SUMIFS($F$5:F5,$B$5:B5,B5))
💡 Bí quyết nằm ở vùng $E$5:E5: điểm đầu cố định bằng dấu $, điểm cuối thay đổi khi kéo công thức xuống. Nhờ vậy SUMIFS chỉ cộng các giao dịch từ đầu đến dòng hiện tại của đúng khách đó → ra số dư lũy kế.

5. Bước 3 – Bảng tổng hợp công nợ bằng SUMIFS

Sheet TongHop trả lời câu hỏi quan trọng nhất: mỗi khách đang nợ bao nhiêu? Mã KH, tên, nợ đầu kỳ, hạn mức lấy từ DanhMucKH; phát sinh và đã thu cộng từ NhatKy bằng SUMIFS:

Phát sinh nợ (E5):

=SUMIFS(NhatKy!$E$5:$E$200,NhatKy!$B$5:$B$200,B5)

Đã thu (F5):

=SUMIFS(NhatKy!$F$5:$F$200,NhatKy!$B$5:$B$200,B5)

Còn nợ (G5): =D5+E5-F5

Trạng thái (I5):

=IF(G5>H5,”Vượt hạn mức”,IF(G5>0,”Còn nợ”,”Hết nợ”))
📗 File-quan-ly-cong-no.xlsx
E5fx  =SUMIFS(NhatKy!$E$5:$E$200,NhatKy!$B$5:$B$200,B5)
A B C D E F G H
4 Mã KH Tên khách hàng Nợ đầu kỳ Phát sinh nợ Đã thu Còn nợ Hạn mức Trạng thái
5 KH01 Cửa hàng VLXD Minh Phát 5.000.000 28.300.000 10.000.000 23.300.000 30.000.000 Còn nợ
6 KH02 Tạp hóa Cô Lan 0 4.300.000 4.300.000 0 10.000.000 Hết nợ
7 KH05 Anh Tuấn – công trình Q.7 8.000.000 22.500.000 8.000.000 22.500.000 25.000.000 Còn nợ
8 KH07 Chị Hạnh – shop Bình Thạnh 1.200.000 4.500.000 0 5.700.000 5.000.000 Vượt hạn mức
9 TỔNG CỘNG 16.700.000 91.000.000 42.900.000 64.800.000
HuongDanDanhMucKHNhatKyTongHop

Hình 3: Sheet TongHop – nhìn là biết tổng 64,8 triệu đang nằm ngoài khách, chị Hạnh đã vượt hạn mức

📌 Muốn xem công nợ theo tháng? Thêm 2 ô Từ ngày (L1) và Đến ngày (L2), rồi bổ sung điều kiện ngày vào SUMIFS:

=SUMIFS(NhatKy!$E$5:$E$200,NhatKy!$B$5:$B$200,B5,NhatKy!$A$5:$A$200,”>=”&$L$1,NhatKy!$A$5:$A$200,”<=”&$L$2)

6. Bước 4 – Tô màu khách vượt hạn mức nợ

Để những khách cần nhắc nợ “tự nổi lên”, dùng Conditional Formatting:

1

Chọn vùng A5:I12 ở sheet TongHop.

2

Vào Home → Conditional Formatting → New Rule.

3

Chọn Use a formula to determine which cells to format.

4

Nhập công thức =$I5="Vượt hạn mức" → bấm Format, chọn nền đỏ nhạt, chữ đỏ đậm → OK.

5

Lặp lại với công thức =$I5="Hết nợ" và chọn nền xanh lá nhạt.
New Formatting Rule
Select a Rule Type:
► Format all cells based on their values
► Format only cells that contain
► Use a formula to determine which cells to format
Format values where this formula is true:
=$I5=”Vượt hạn mức”
Preview:AaBbCcYyZzFormat…
OKCancel

Hình 4: Hộp thoại New Formatting Rule – tô đỏ khách vượt hạn mức

7. 5 lỗi thường gặp khi quản lý công nợ bằng Excel

⚠ Lỗi 1: Gõ tay tên khách thay vì chọn mã
“Cô Lan” và “Cô Lan ” (thừa dấu cách) là 2 người khác nhau với Excel → SUMIFS cộng thiếu. Luôn dùng Mã KH và danh sách xổ xuống.
⚠ Lỗi 2: Ghi số tiền kèm chữ
Gõ “5tr” hay “5.000.000đ” khiến Excel hiểu là chữ, không cộng được. Chỉ gõ số, định dạng hiển thị bằng Format Cells.
⚠ Lỗi 3: Chèn dòng nằm ngoài vùng công thức
Vùng SUMIFS đến dòng 200 mà bạn ghi tới dòng 250 thì phần dư bị bỏ qua. Nên chuyển NhatKy thành Table (Ctrl+T) để vùng tự giãn.
⚠ Lỗi 4: Sửa đè lên ô công thức
Gõ số vào cột Còn nợ “cho nhanh” sẽ phá công thức. Khóa các cột công thức bằng Review → Protect Sheet.
⚠ Lỗi 5: Không sao lưu
File trên 1 máy, hỏng ổ cứng là mất hết. Lưu thêm bản trên Google Drive/OneDrive hoặc copy ra USB mỗi tuần.

8. Khi nào nên chuyển sang phần mềm quản lý công nợ?

Cách quản lý công nợ bằng Excel ở trên rất hợp khi bạn mới bắt đầu hoặc có ít khách nợ. Nhưng khi cửa hàng bán chịu nhiều mỗi ngày, việc vừa lập hóa đơn vừa ghi công nợ ở hai nơi sẽ tốn thời gian và dễ sót. Lúc đó, phần mềm bán hàng có sẵn quản lý công nợ sẽ đỡ việc hơn nhiều:

Tiêu chí File Excel tự làm Phần mềm TPSoft
Ghi công nợ Nhập tay vào nhật ký ✅ Tự ghi khi lập hóa đơn bán chịu
Tồn kho Phải làm file riêng ✅ Tự trừ kho khi bán
In bảng đối chiếu cho khách Tự lọc và định dạng ✅ In sẵn theo khách, theo kỳ
Nợ nhà cung cấp Thêm file khác ✅ Có sẵn trong cùng phần mềm
Báo cáo lãi lỗ Phải tự làm ✅ Có sẵn

TPSoft là phần mềm quản lý bán hàng kết hợp quản lý kho và công nợ viết trên nền Excel VBA, hoạt động Offline, phù hợp nhiều ngành: tạp hóa, vật liệu xây dựng, điện nước, nhôm kính, tôn sắt thép,…. Cài đặt 1 lần sử dụng vĩnh viễn. Vì chạy trên Excel nên ai đã quen bảng tính như bài này sẽ làm quen rất nhanh. Xem thêm bảng giá hoặc video hướng dẫn sử dụng.

9. Tải file mẫu quản lý công nợ bằng Excel

📥
File quản lý công nợ khách hàng bằng Excel
4 sheet: Hướng dẫn · DanhMucKH · NhatKy · TongHop — có sẵn công thức, danh sách xổ xuống, tô màu tự động và dữ liệu mẫu.

⬇ Tải file mẫu miễn phí (.xlsx)

Dùng tốt trên Excel 2010 trở lên. Xóa dữ liệu mẫu trước khi nhập dữ liệu thật.

10. Câu hỏi thường gặp

❓ Quản lý công nợ bằng Excel có cần biết nhiều công thức không?
Không. Bạn chỉ cần SUMIFS, INDEX, MATCH và IF như trong bài. Nếu dùng file mẫu thì công thức đã có sẵn, chỉ việc nhập dữ liệu.
❓ File có theo dõi được nợ nhà cung cấp không?
Được. Sao chép file, đổi “khách hàng” thành “nhà cung cấp”, cột Phát sinh nợ là tiền mua chịu, cột Đã thu đổi thành Đã trả.
❓ Làm sao in bảng công nợ của một khách để gửi đối chiếu?
Ở sheet NhatKy bấm Data → Filter, lọc cột Mã KH theo khách cần in, rồi in vùng đang lọc. Cột Dư nợ sau GD cho khách thấy rõ số dư sau từng lần mua/trả.

📺 Học Excel và quản lý bán hàng cùng Tin học Đông Phương

Theo dõi kênh YouTube Tin học Đông Phương để xem thêm các bài Excel, VBA thực tế. Cần quản lý bán hàng – kho – công nợ trọn gói? Dùng thử phần mềm TPSoft, cài 1 lần dùng vĩnh viễn, hoặc nhắn Zalo 0906 864 860 để được tư vấn.

Trao giá trị, nhận niềm tin.

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *