Skip to content

Latest commit

History

8 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

📊 Excel to Table Converter

PythonPyQt6OpenPyXLPlatform

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.


📑 Table of Contents


🙌 Who is this for?

CategoryDescription
👨‍💻 DevelopersConvert Excel data into readable text tables for logs, documentation, or CLI tools
📊 Data analystsShare spreadsheet data in plain text format via email or chat
📝 Documentation writersEmbed Excel data into Markdown, README files, or text documents
🎓 Students & researchersPresent tabular data in assignments and reports without screenshots
🖥️ System administratorsGenerate text-based reports from Excel export files

💡 Why use Excel to Table Converter?

ProblemSolution
❌ 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 hoursOne click – automatic formatting with perfect alignment
❌ Multi-sheet Excel files are hard to shareEach sheet becomes a separate .txt file
❌ Boring, ugly text outputBeautiful 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!


✨ Features

FeatureDescription
🎯 Drag & DropSimply drag your Excel file onto the app – no browsing needed
📑 Multi-Sheet SupportEach sheet becomes a separate .txt file in the output folder
🎨 ASCII Art BordersBeautiful box-drawing characters for professional-looking tables
📐 Auto AlignmentContent is automatically centered in each cell
📏 Smart SizingColumns adjust to the longest word automatically
🖼️ Visual FeedbackIcons and animations show the conversion status
💾 Desktop DefaultAutomatically saves output to your Desktop
📂 One-Click OpenOpens the output folder after successful conversion
🔤 UTF-8 EncodingPreserves all Unicode and special characters
🪟 Modern UIClean, gradient-styled interface with rounded corners

📸 Screenshot

1234567

🚀 Getting Started

1️⃣ Clone the repository

git clone https://github.com/NullCoreX/Excel.git
cd Excel

2️⃣ Install dependencies

pip install PyQt6 openpyxl

3️⃣ Run the application

python Excel.py

🧩 How It Works

StepAction
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

📁 Output Structure

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 │
└──────────────┴─────────┴─────────────┘

⚙️ Customization

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 stylesimple_chars= ['+', '+', '-', '+', '+', '+', '+', '+', '+', '+', '|']
# Double-line styledouble_chars= ['╞', '╡', '═', '╪', '╚', '╝', '╔', '╗', '╦', '╩', '║']

🐛 Troubleshooting

IssueSolution
Drag & drop not workingMake sure you're dragging the file onto the dashed drop zone
File not loadingCheck that the file has .xlsx or .xls extension
Output folder not openingThe folder path might not exist – check the output directory field
Empty tablesMake sure your Excel sheet has data in the first row/column
Encoding issuesThe app uses UTF-8 – all characters are preserved

🔧 Development

Project Structure:

Excel.py
├── classExcel(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
│ ├── ReadExcelfile
│ ├── Calculatecolumnwidths
│ ├── GenerateASCIItable
│ └── Saveto .txtfiles

🤝 Contributing

Pull requests and feature suggestions are always welcome! Feel free to:

  1. Fork the repository
  2. Create a feature branch
  3. Submit a pull request

⭐ Support

If you find this tool useful, please give it a ⭐ on GitHub!

About

A PyQt6-based desktop application that converts Excel files (.xlsx/.xls) into beautifully formatted text-based tables, with each sheet saved as a separate .txt file.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages