
People often ask me, βShould I learn VBA or Python?β The honest answer is: it depends on where your boring task lives. Here is how I decide.
In this article
The quick decision table
| Your task mostly happens in⦠| Start with | Why |
|---|---|---|
| One or a few Excel workbooks | Excel VBA | Built in, no installs, works on locked-down office PCs |
| Many files, big data, or data cleaning | Python (pandas) | Handles millions of rows and hundreds of files easily |
| Moving between apps, email, folders, web forms | Power Automate | No-code, connects Microsoft 365 and desktop apps |
| SAP GUI screens | SAP GUI Scripting from VBA | Drives the SAP screens you already use |
| Oracle EPM / Essbase reports | Smart View + VBA | Refresh and format packs automatically |
| Databases and reporting systems | SQL | Ask the source for exactly the data you need |
Three questions before you automate anything
- How often? A task you do daily for 15 minutes costs about 60 hours a year. A task done twice a year may not be worth automating.
- Is it stable? If the input layout changes every month, fix the process first.
- Who runs it when you are on holiday? Write down the steps and keep the settings (dates, paths) in cells or a config file, not buried in code.
A learning path that works
- Record a macro, then clean it up β try the Macro Recorder tool to see how.
- Learn loops and βlast rowβ in VBA β the VBA Playground walks through them.
- Learn enough SQL to filter and group β practise in the SQL Playground.
- Pick up Python when files get too big or too many for Excel.
Atul (AJ) builds office-automation and local-first AI tools as Atulya AI, and works with Excel, SAP and Oracle EPM every day. He writes about the shortcuts, macros and automations that actually save time β plus the occasional wacky fact. Videos on YouTube: Lazy Automator AI (@LazyAutomatorAI).
More posts by Atul βStuck on a step? Ask a question and the AI answers using this article.