An ultra-fast 1-click suite to clean, format, and automate FBR Iris & Tax MIS "Payment Details" Excel reports.
Features • Quick Start • Excel Macro Setup • Desktop GUI • Offline Web Tool • Python CLI
When downloading Payment Details MIS reports from FBR Iris or tax portals:
- Cluttered Unwanted Columns: Columns like
Payment Id,Due Date,Payment Source, andClaimedtake up screen space and are redundant for reconciliation. - "Number Stored as Text": Amounts (e.g.
'10,280'), Taxable amounts, and Tax Years are formatted as raw text strings with commas, breaking Excel calculations and sorting. - Missing Totals & Dynamic Subtotals: You have to manually add formulas at the bottom every single time. Moreover, standard
SUM()fails to update when filtering by Tax Section. - Unformatted Layout: No gridlines, unformatted numbers, and narrow columns causing
###overflow.
| Raw Downloaded File | Cleaned & Formatted Output |
|---|---|
| ❌ 13 cluttered columns | ✅ 9 clean columns in exact standard sequence |
❌ Numbers stored as text ('10,280') |
✅ True numeric format with accounting style (#,##0) |
| ❌ No AutoFilters or gridlines | ✅ AutoFilter enabled + thin grid borders + bold headers |
❌ No totals or static SUM |
✅ Live =SUBTOTAL(9, ...) formulas that update dynamically on filter! |
❌ Text clipped / ### display |
✅ Auto-fitted column widths with clean padding |
Choose the method that best fits your workflow:
┌─────────────────────────────────────────────────────────────────────────┐
│ MIS EXCEL CLEANER SUITE │
├───────────────────┬───────────────────┬────────────────┬────────────────┤
│ ⭐ Excel Macro │ 💻 Desktop GUI │ 🌐 Web Tool │ ⚡ Python CLI │
│ (Ctrl+Shift+C) │ (Drag & Drop) │ (In Browser) │ (Batch Ops) │
└───────────────────┴───────────────────┴────────────────┴────────────────┘
Clean any MIS file directly inside Microsoft Excel with one keyboard shortcut in 0.05 seconds.
- Open Microsoft Excel.
- Press
Alt + F11to open the Visual Basic for Applications (VBA) Editor. - In the left panel (Project Explorer), click on
VBAProject (PERSONAL.XLSB).Note: If
PERSONAL.XLSBis not visible, click View > Macros > Record Macro, select "Personal Macro Workbook", click OK, and immediately click "Stop Recording". - In the top menu bar, click File > Import File... (or press
Ctrl + M). - Select
MIS_Cleaner_Macro.bas. - Press
Ctrl + Sto save, then close the VBA window. - In Excel, press
Alt + F8, selectSetupShortcut, and click Run (this activatesCtrl + Shift + C).
- Open any downloaded MIS
Payment Details.xlsfile in Excel. - Press
Ctrl + Shift + Con your keyboard. - ✨ Done! The entire sheet is cleaned, formatted, and totaled instantly.
A standalone desktop interface with Drag & Drop support and batch folder processing.
- Double-click
Run_MIS_Cleaner_GUI.bator run:
python mis_cleaner_gui.py- Drag & Drop single or multiple
.xls/.xlsxfiles. - Select an entire folder of client downloads to batch clean everything in 1 click.
- Built-in "Open in Excel" button to review results immediately.
Zero installation required. Works in Google Chrome, Microsoft Edge, Firefox, and Brave completely offline.
- Double-click
Open_Offline_Web_Cleaner.bator opencleaner.htmlin your browser.
- Drag and drop MIS files into the browser.
- Instant table preview of cleaned data and calculated totals.
- 1-Click download of clean
.xlsxfiles. - 100% Client-Side: No data is ever uploaded to any server.
For command-line power users and automated accounting scripts.
git clone https://github.com/YOUR_USERNAME/mis-excel-cleaner.git
cd mis-excel-cleaner
pip install -r requirements.txt# Clean a single file:
python clean_mis.py "Payment Details (3).xls"
# Batch clean an entire directory of client files:
python clean_mis.py "C:\Users\Username\Downloads\MIS_Exports"The cleaner automatically handles variations in header casing and spaces:
| Original MIS Column | Action | Output Position | Output Type |
|---|---|---|---|
Payment Id |
❌ Removed | - | - |
CPR No |
✅ Kept | Column 1 (A) | Text |
Withholding Agent Reg No |
✅ Kept | Column 2 (B) | Numeric / Text |
Wa Name |
✅ Kept | Column 3 (C) | Text |
Section |
✅ Kept | Column 4 (D) | Text |
Tax Month |
✅ Kept | Column 5 (E) | Integer |
Tax Year |
✅ Kept | Column 6 (F) | Integer |
Taxable Amount |
✅ Kept | Column 7 (G) | Accounting Number (#,##0) |
Paid Amount |
✅ Kept | Column 8 (H) | Accounting Number (#,##0) |
Due Date |
❌ Removed | - | - |
Payment Date |
✅ Kept | Column 9 (I) | Text / Date |
Payment Source |
❌ Removed | - | - |
Claimed |
❌ Removed | - | - |
Tax data contains sensitive taxpayer information (NTN, CNIC, income, and withholding amounts). This project adheres to a strict Offline-First Security Architecture:
- All processing is performed 100% locally on your machine.
- No network requests, external telemetry, or cloud dependencies.
- Compatible with strict corporate and accounting firm data protection standards.
Contributions are welcome! Please read CONTRIBUTING.md for details on submitting pull requests, reporting issues, and suggesting enhancements.
This project is licensed under the MIT License.