Excel to Table Converter is a powerful desktop application built with PyQt6 and Python that transforms Excel spreadsheets into beautifully formatted text tables β with drag & drop support, multi-sheet processing, ASCII art borders, and center-aligned content.
π― Perfect for: Developers, data analysts, documentation writers, students, and anyone who needs to display Excel data in plain text format.
- π Who is this for?
- π‘ Why use Excel to Table Converter?
- β¨ Features
- πΈ Screenshot
- π Getting Started
- π§© How It Works
- π Output Structure
- βοΈ Customization
- π Troubleshooting
- π§ Development
- π€ Contributing
| Category | Description |
|---|---|
| π¨βπ» Developers | Convert Excel data into readable text tables for logs, documentation, or CLI tools |
| π Data analysts | Share spreadsheet data in plain text format via email or chat |
| π Documentation writers | Embed Excel data into Markdown, README files, or text documents |
| π Students & researchers | Present tabular data in assignments and reports without screenshots |
| π₯οΈ System administrators | Generate text-based reports from Excel export files |
| Problem | Solution |
|---|---|
| β Excel files can't be viewed in terminals or text editors | β Converts to plain text tables that work anywhere |
| β Screenshots of tables are not searchable | β Text tables are fully searchable and copyable |
| β Manual table formatting takes hours | β One click β automatic formatting with perfect alignment |
| β Multi-sheet Excel files are hard to share | β
Each sheet becomes a separate .txt file |
| β Boring, ugly text output | β Beautiful ASCII art borders with professional styling |
π‘ Pro Tip: Use this tool to embed Excel data directly into your GitHub README files, documentation wikis, or log files!
| Feature | Description |
|---|---|
| π― Drag & Drop | Simply drag your Excel file onto the app β no browsing needed |
| π Multi-Sheet Support | Each sheet becomes a separate .txt file in the output folder |
| π¨ ASCII Art Borders | Beautiful box-drawing characters for professional-looking tables |
| π Auto Alignment | Content is automatically centered in each cell |
| π Smart Sizing | Columns adjust to the longest word automatically |
| πΌοΈ Visual Feedback | Icons and animations show the conversion status |
| πΎ Desktop Default | Automatically saves output to your Desktop |
| π One-Click Open | Opens the output folder after successful conversion |
| π€ UTF-8 Encoding | Preserves all Unicode and special characters |
| πͺ Modern UI | Clean, gradient-styled interface with rounded corners |
git clone https://github.com/NullCoreX/Excel.git
cd Excelpip install PyQt6 openpyxlpython Excel.py| Step | Action |
|---|---|
| 1οΈβ£ | Drag & Drop - Drag any .xlsx or .xls file onto the drop zone |
| 2οΈβ£ | Auto Detect - The app automatically detects the file and shows the Excel icon |
| 3οΈβ£ | Set Output - Choose or type your output directory (defaults to Desktop) |
| 4οΈβ£ | Click Convert - Press the big convert button |
| 5οΈβ£ | Get Tables - Each Excel sheet becomes a .txt file with beautiful ASCII tables |
| 6οΈβ£ | Auto Open - The output folder opens automatically when done |
After conversion, your output folder will look like this:
Desktop/
βββ Sheet1.txt
βββ Sheet2.txt
βββ Sheet3.txt
βββ ...
Example of Sheet1.txt:
ββββββββββββββββ¬ββββββββββ¬ββββββββββββββ
β Product β Price β Stock β
ββββββββββββββββΌββββββββββΌββββββββββββββ€
β Laptop β $999 β 15 β
ββββββββββββββββΌββββββββββΌββββββββββββββ€
β Mouse β $25 β 150 β
ββββββββββββββββΌββββββββββΌββββββββββββββ€
β Keyboard β $75 β 45 β
ββββββββββββββββ΄ββββββββββ΄ββββββββββββββ
You can easily modify the table style by editing the chars_1 list in Excel.py:
# Current style (professional)
chars_1 = ['β', 'β€', 'β', 'βΌ', 'β', 'β', 'β', 'β', 'β¬', 'β΄', 'β']
# Alternative styles you can try:
# Simple style
simple_chars = ['+', '+', '-', '+', '+', '+', '+', '+', '+', '+', '|']
# Double-line style
double_chars = ['β', 'β‘', 'β', 'βͺ', 'β', 'β', 'β', 'β', 'β¦', 'β©', 'β']| Issue | Solution |
|---|---|
| Drag & drop not working | Make sure you're dragging the file onto the dashed drop zone |
| File not loading | Check that the file has .xlsx or .xls extension |
| Output folder not opening | The folder path might not exist β check the output directory field |
| Empty tables | Make sure your Excel sheet has data in the first row/column |
| Encoding issues | The app uses UTF-8 β all characters are preserved |
Project Structure:
Excel.py
βββ class Excel(QMainWindow)
β βββ __init__() # Initialize UI and connections
β βββ set_icons_and_titles() # Setup window icons and title
β βββ dragEnterEvent() # Handle drag enter
β βββ dropEvent() # Handle file drop
β βββ show_message() # Display custom message boxes
β βββ process_file() # Validate and load Excel file
β βββ start_process() # Main conversion logic
β βββ Read Excel file
β βββ Calculate column widths
β βββ Generate ASCII table
β βββ Save to .txt filesPull requests and feature suggestions are always welcome! Feel free to:
- Fork the repository
- Create a feature branch
- Submit a pull request
If you find this tool useful, please give it a β on GitHub!