Tóm tắt nhanh (TL;DR)
Circular Reference là gì: tham chiếu vòng — công thức tham chiếu đến chính ô của nó, trực tiếp (=D1+D2+D3 nằm trong ô D3) hoặc gián tiếp qua chuỗi ô (A1 → B1 → C1 → A1), khiến Excel không thể kết thúc phép tính.
Nguy hiểm nhất: lỗi này không báo #REF! hay #VALUE! — nó chỉ hiển thị cảnh báo nhỏ trên thanh trạng thái "Circular References" và có thể âm thầm trả về 0 hoặc số sai.
Cách tìm nhanh: Formulas → Error Checking → Circular References — Excel liệt kê từng ô tham chiếu vòng, bấm vào là nhảy tới đúng ô lỗi.
Cách sửa: sửa công thức để không tham chiếu chính nó, hoặc dùng Trace Precedents/Trace Dependents để lần theo chuỗi tham chiếu và "bẻ gãy" vòng lặp tại 1 ô.
Ngoại lệ: một số mô hình tài chính cố ý dùng tham chiếu vòng → bật iterative calculation (File → Options → Formulas) để Excel lặp có giới hạn, nhưng nhớ tắt lại sau khi xong.
Circular Reference trong Excel là gì?
Circular Reference (tham chiếu vòng) xảy ra khi một công thức tham chiếu đến chính ô chứa nó — trực tiếp hoặc gián tiếp. Ví dụ trực tiếp: ô D3 chứa =D1+D2+D3 — D3 phụ thuộc vào chính D3, Excel không thể tính vì "muốn biết kết quả thì phải biết kết quả trước". Gián tiếp: ô A1 tham chiếu B1, B1 tham chiếu C1, và C1 tham chiếu ngược về A1 — vòng lặp khép kín. Excel không cho phép tham chiếu vòng theo mặc định, nhưng lỗi này rất dễ vô tình tạo ra khi dựng bảng tính phức tạp (Nguồn: Microsoft Support).
Vì sao circular reference nguy hiểm nhất trong các lỗi Excel?
Khác với #REF!, #VALUE! hay #DIV/0! hiển thị rõ ràng trong ô, circular reference "thất bại âm thầm":
- Ô lỗi thường hiển thị 0 hoặc giá trị tính lần cuối — trông "bình thường", không có dấu hiệu đỏ nào
- Cảnh báo duy nhất là dòng chữ nhỏ "Circular References: [địa chỉ ô]" trên thanh trạng thái (status bar) — dễ bỏ qua hoàn toàn
- Kết quả có thể là số sai, báo cáo lệch mà không ai biết vì sao
- File có thể chậm đi vì Excel liên tục cố tính lại vòng lặp
Đó là lý do lỗi này đáng sợ nhất: nó không la hét, nó lặng lẽ làm hỏng số liệu.
Bảng tóm tắt: 3 dạng circular reference và cách xử lý
📊 Bảng: 3 Dạng Circular Reference Và Cách Xử Lý
| # | Dạng | Ví dụ | Cách xử lý |
|---|---|---|---|
| 1 | Tự tham chiếu trực tiếp | Ô D3 chứa =D1+D2+D3 |
Sửa công thức không bao gồm chính ô đó |
| 2 | Tham chiếu gián tiếp qua chuỗi | A1 → B1 → C1 → A1 | Dùng Trace Precedents lần theo chuỗi, bẻ gãy tại 1 ô |
| 3 | Tham chiếu vòng cố ý (mô hình tài chính) | Tính lãi kép dựa trên chính số dư | Bật iterative calculation có giới hạn, tắt lại sau khi xong |
Cách tìm circular reference trong 30 giây
Cách 1 — Error Checking (nhanh nhất):
- Mở tab Formulas
- Bấm mũi tên cạnh Error Checking
- Chọn Circular References
- Excel liệt kê các ô tham chiếu vòng — bấm vào từng ô để nhảy tới và sửa
Nếu menu bị mờ (grayed out) nghĩa là file không có circular reference nào — file của bạn sạch. Lặp lại cho đến khi thanh trạng thái không còn hiển thị "Circular References" (Nguồn: Microsoft Support).
Cách 2 — Thanh trạng thái: Nhìn góc dưới trái cửa sổ Excel. Nếu thấy chữ "Circular References" (kèm địa chỉ ô hoặc không), bấm vào đó để nhảy tới ô lỗi.
Cách 3 — Trace Precedents (cho vòng lặp gián tiếp):
- Bấm vào ô đầu tiên trong danh sách circular references
- Formulas → Trace Precedents — bấm liên tục, mũi tên xanh sẽ chỉ ra ô mà công thức phụ thuộc
- Cứ lần theo đến khi một mũi tên quay ngược về chính ô đang xét — đó là nơi vòng lặp khép kín
- Sửa công thức tại điểm đó, rồi Remove Arrows để xóa mũi tên
Cách sửa từng dạng
Dạng 1 — Tự tham chiếu trực tiếp (thường là gõ nhầm)
Ô D3 chứa =D1+D2+D3 — công thức "cộng cả chính mình". Thường là lỗi gõ nhầm: bạn định cộng D1+D2 nhưng kéo nhầm chuột bao gồm cả D3.
Cách sửa: Viết lại công thức không tham chiếu chính ô đó:
= D1+D2+D3 → = D1+D2 ' nếu D3 là ô chứa công thức
= SUM(A3:F3) → = SUM(A3:E3) ' nếu F3 là ô chứa công thức
Dạng 2 — Tham chiếu gián tiếp qua chuỗi (khó thấy nhất)
A1 chứa =B1*2, B1 chứa =C1+1, C1 chứa =A1/3 — nhìn từng công thức thì không có gì sai, nhưng cả ba tạo thành vòng lặp khép kín. Kiểu này khó phát hiện bằng mắt thường, nhất là khi chuỗi dài và trải qua nhiều sheet.
Cách sửa: Dùng Trace Precedents lần theo chuỗi như hướng dẫn ở trên. Khi tìm ra điểm khép kín, sửa 1 trong các công thức để phá vòng — thường chỉ cần đổi tham chiếu của 1 ô là chuỗi được "bẻ gãy" (Nguồn: Microsoft Support).
Dạng 3 — Tham chiếu vòng cố ý (mô hình tài chính)
Một số mô hình chuyên nghiệp (tính lãi kép có phí dựa trên số dư, giải phương trình, tính toán đệ quy) cố ý dùng tham chiếu vòng. Trong trường hợp này, bật iterative calculation để Excel lặp có giới hạn:
- File → Options → Formulas
- Tích chọn Enable iterative calculation
- Maximum Iterations: số lần lặp tối đa (mặc định 100)
- Maximum Change: sai số chấp nhận giữa các lần lặp (mặc định 0,001 — càng nhỏ càng chính xác nhưng chậm hơn)
⚠️ Bẫy ẩn nguy hiểm: một khi đã bật iterative calculation, cài đặt này vẫn còn hiệu lực cho mọi file mở sau đó trong phiên làm việc. Nếu sau này bạn vô tình tạo tham chiếu vòng ở file khác, Excel sẽ không cảnh báo — nó âm thầm lặp và trả kết quả có thể sai. Luôn tắt iterative calculation ngay khi xong mô hình cần nó (Nguồn: Microsoft Support).
Case study: Bảng tổng hợp doanh thu "chạy ngon" nhưng số lúc nào cũng sai
Bối cảnh: Công ty dịch vụ logistics T — 20 nhân viên. Kế toán dựng bảng tổng hợp doanh thu theo tháng, có cột "Tổng cộng" và cột "Phí vận hành" tính bằng phần trăm của tổng.
Vấn đề gặp phải:
- Số "Tổng doanh thu" cuối tháng luôn thấp hơn thực tế vài chục triệu, không ai hiểu vì sao
- Kiểm tra từng dòng: số liệu nhập đúng, công thức cộng đúng
- Không có ô nào hiển thị lỗi đỏ — bảng tính "nhìn" hoàn toàn bình thường
- Đối chiếu với sổ sách ngân hàng mới phát hiện lệch, mất gần 2 ngày dò tìm
Phân tích file gốc:
- Công thức cột F (Tổng cộng):
=SUM(B2:E2)— tổng các cột doanh thu - Công thức cột G (Phí vận hành):
=F2*5%— phí tính trên tổng - Công thức ô F2:
=SUM(B2:G2)— kéo nhầm vùng SUM bao gồm cả cột G (phí vận hành) và cả chính cột F
Nguyên nhân gốc rễ: Ô F2 tính tổng B2:G2 — bao gồm cả ô G2 (phí) và ô F2 (chính nó). Đây là tham chiếu vòng: F2 phụ thuộc G2, G2 phụ thuộc F2. Excel không báo lỗi đỏ, chỉ hiển thị cảnh báo nhỏ trên thanh trạng thái và trả về giá trị 0 cho F2 — kế toán nhìn thấy 0 thì tưởng "chưa có dữ liệu", trong khi cả bảng tính sai từ đó.
Kết quả sau xử lý: Dùng Formulas → Error Checking → Circular References → phát hiện ô F2 ngay lập tức. Sửa vùng SUM từ B2:G2 thành B2:E2 — bỏ cột G và chính cột F. Tổng doanh thu hiển thị đúng ngay lập tức, khớp 100% với ngân hàng. Toàn bộ quá trình mất 5 phút — sau 2 ngày dò tìm mò mẫm.
Bài học từ case study: Circular reference là "kẻ giết người thầm lặng" của bảng tính — nó không báo lỗi đỏ, chỉ nhỏ nhẹ trên thanh trạng thái và trả về 0 hoặc số sai. Nếu số liệu tổng hợp "cứ sai mà không hiểu vì sao", hãy kiểm tra Circular References trước tiên — nhanh hơn nhiều so với dò từng công thức. Và khi kéo vùng SUM, nhìn kỹ: đừng bao gồm chính cột công thức. Nếu file của bạn tích lũy nhiều lỗi kiểu này cùng lúc, đó là dấu hiệu cấu trúc bảng tính đang yếu — đọc thêm 7 Dấu hiệu Excel giết doanh nghiệp để nhận diện sớm.
Câu Hỏi Thường Gặp
Circular Reference có báo lỗi đỏ trong ô không?
Không — đây là điểm nguy hiểm nhất. Circular reference thường hiển thị 0 hoặc giá trị tính lần cuối trong ô, trông bình thường. Dấu hiệu duy nhất là chữ nhỏ "Circular References" trên thanh trạng thái góc dưới trái. Nhiều người dùng file sai nhiều tháng mà không phát hiện.
Làm sao tìm nhanh circular reference?
Formulas → Error Checking → Circular References — Excel liệt kê các ô tham chiếu vòng, bấm vào là nhảy tới. Nếu menu bị mờ, file không có lỗi này. Cũng có thể nhìn thanh trạng thái: thấy chữ "Circular References" là bấm vào đó.
Khi nào nên bật iterative calculation?
Chỉ khi cố ý dùng tham chiếu vòng cho mô hình tài chính (lãi kép, giải phương trình). File → Options → Formulas → Enable iterative calculation. Quan trọng: tắt lại ngay sau khi xong — vì cài đặt này áp dụng cho mọi file mở sau đó, có thể khiến các file khác âm thầm tính sai mà không cảnh báo.
Tham chiếu vòng gián tiếp là gì?
Là vòng lặp qua nhiều ô: A1 tham chiếu B1, B1 tham chiếu C1, C1 tham chiếu ngược A1. Từng công thức nhìn không có gì sai, nhưng chuỗi khép kín thành vòng. Dùng Trace Precedents (Formulas) lần theo mũi tên để tìm điểm khép kín, rồi sửa 1 công thức để phá vòng.
Vì sao file có circular reference bị chậm?
Vì Excel liên tục cố tính lại vòng lặp — mỗi lần thay đổi bất kỳ ô nào, nó lại chạy lại chuỗi tính toán không có điểm dừng (trừ khi bật iterative calculation có giới hạn). Sửa dứt điểm circular reference sẽ giúp file nhanh hơn rõ rệt.
Tóm lại
Circular reference là lỗi tham chiếu vòng — công thức tham chiếu chính nó, trực tiếp hoặc gián tiếp qua chuỗi ô. Nguy hiểm vì nó không báo lỗi đỏ: chỉ hiển thị cảnh báo nhỏ trên thanh trạng thái và âm thầm trả về 0 hoặc số sai. Cách xử lý: Formulas → Error Checking → Circular References để tìm → sửa công thức phá vòng → dùng Trace Precedents cho chuỗi gián tiếp → chỉ bật iterative calculation khi cố ý dùng (và nhớ tắt lại). Nếu bảng tính của bạn "cứ sai mà không hiểu vì sao", kiểm tra lỗi này trước tiên.
📥 Bảng tính của bạn đang sai số mà không tìm ra nguyên nhân? Liên hệ Exceltoapp.vn để được hỗ trợ kiểm tra toàn diện công thức — hoặc đọc bài Chi phí thực sự của việc dùng Excel quản lý để biết mỗi lần dò lỗi đang tốn bao nhiêu tiền của shop.
Chi phí thực sự của việc dùng Excel quản lý →Tác giả: Exceltoapp.vn