XLChek — Offline Excel Risk Diagnostics
What XLChek Does
XLChek is an offline, read-only Excel analysis tool that identifies structural risks in spreadsheets, including:
- Circular references
- Hidden assumptions (hard-coded constants)
- Volatile formulas
- Orphan (unused) calculations
- Formula drift patterns (copy/paste inconsistencies within a row)
- High-impact cells (cells many other formulas depend on)
It does not modify Excel files.
XLChek identifies structural risk, not business correctness.
Internal package name: the tool is invoked as
python -m sheetguard(see "How to Run" below). "XLChek" is the product name shown in the app, the report, and this documentation.
What's New in v0.2.0
- Fixed a reference-parsing bug that could inflate the "symbolic references" count and misread cross-sheet formulas
- Fixed the impact-ranking logic so "high-impact" cells now reflect true downstream dependents, not just a formula's own inputs
- Added an automated test suite (pytest) covering the reference-parsing, impact-ranking, and formula-drift detectors
- Redesigned the HTML report: severity color-coding per finding, mobile-responsive layout, clear "all clear" indicators for clean sections, and clickable summary links
- Added an in-report disclaimer describing supported file types and known limitations
- Removed unused/dead code paths from the dependency-graph module
- Normalized line endings across the codebase (see
.gitattributes)
Supported Files
.xlsx.xlsm(formulas are scanned; embedded VBA macros are not analyzed — see Disclaimer)
How to Run
- Run
python -m sheetguardfrom PowerShell (or your terminal of choice) in the project root - Drop an Excel file into the XLChek window, or click Browse to select one
- Click Run Analysis and wait for it to complete
- View the generated HTML report (opens automatically)
- (Optional) Inspect the accompanying JSON output for automation or scripting
See XLChek User Guide.docx for a full walkthrough of every report section, with screenshots.
Configuration
All detection behavior is controlled via rules.yaml. No code changes are required to:
- Suppress false positives
- Change severity thresholds
- Enable/disable detectors
- Adjust conservativeness
Privacy & Security
- 100% offline
- No internet access
- No data leaves the machine
- Safe for financial, audit, and regulated environments
Intended Users
- Finance teams
- Auditors
- Supply chain analysts
- Operations managers
- Excel power users
Found a bug or have a feature request? Please open a GitHub Issue — it helps keep discussion public and searchable for other users too.
You can also reach me directly at: gridgrok.contact@gmail.com
Disclaimer
XLChek performs structural pattern analysis on standard .xlsx workbooks. It does not support: legacy .xls files, password-protected/encrypted workbooks, VBA macros, array/dynamic-array spill formulas, or Power Query/Power Pivot models. Formula parsing is pattern-based, not a full Excel grammar — unusual or highly nested formula constructs may not be fully captured. Results should inform, not replace, manual review.