Topic area
Automating & delivering reports
The job around the workbook: where the data comes from, when it runs, and who receives it.
Topics in automating & delivering reports
Each topic page gathers every guide, how-to, comparison and fix on its subject.
- Databases, APIs & sourcesSQL queries, REST APIs, Google Sheets and cloud files as the input to a report.
- Scheduling & orchestrationcron, Task Scheduler, APScheduler, Airflow, GitHub Actions and Docker.
- Email deliverysmtplib, Outlook and the Graph API — attachments, HTML bodies and recipient lists.
- Publishing & sharing filesS3, SharePoint, Google Drive, network shares, Slack and Teams.
- PDF exportTurning a finished workbook into a PDF, on Windows or on a Linux server.
- Excel in web appsDownload endpoints and uploads in Flask, FastAPI and Django, built in memory.
- Logging, testing & packagingLogs, retries, pre-send checks, pytest, config files and shipping a script to someone else.
Databases, APIs & sources
- GuideMoving Data Between Excel and Databases
- How-toCache API Responses When Building Excel Reports
- How-toCompare an Excel File with a Database Table
- How-toDownload New Excel Files from an SFTP Server
Scheduling & orchestration
- OverviewAutomating Reporting Workflows with Python and Excel
- GuideScheduling Python Excel Scripts with Cron
- How-toBackfill Excel Reports for Past Dates with Python
- How-toChoose a Scheduler for Python Excel Reports
Email delivery
- OverviewAutomating Reporting Workflows with Python and Excel
- GuideEmailing Excel Reports with smtplib
- How-toAttach Multiple Excel Files to One Email in Python
- How-toDownload Excel Attachments from an Email Inbox with Python
Publishing & sharing files
- GuidePublishing Excel Reports to Cloud Storage
- How-toName, Version and Archive Generated Excel Reports
- How-toPost an Excel Report to a Slack Channel with Python
- How-toPost an Excel Report to Microsoft Teams with Python
PDF export
- GuideExporting Excel Reports to PDF
- How-toAdd Bookmarks and a Cover Page to an Excel PDF Export
- How-toAdd Headers, Footers and Page Numbers to an Excel PDF
- How-toCheck a PDF Export for Cut-Off Columns
Excel in web apps
- GuideServing Excel Files from Python Web Apps
- How-toAdd an Export to Excel Action in Django Admin
- How-toBuild a Gradio App That Cleans an Uploaded Excel File
- How-toBuild a Streamlit App to Upload and Download Excel Files
Logging, testing & packaging
- GuideError Handling and Logging in Excel Automation
- GuideTesting and Packaging Excel Automation Scripts
- How-toDetect a Scheduled Report That Did Not Run
- How-toIgnore Excel Lock Files When Processing a Folder
Other areas