By Hiran de Silva
There’s a lot of chatter on social media about whether VBA is obsolete. It’s a narrative that resurfaces every few months—often propelled by influencers eager to showcase newer, flashier tools like Power Query, Office Scripts, or Python. But before we leap to conclusions, let’s take a step back and understand what VBA actually is, what it’s for, and why its function is fundamentally timeless.
To illustrate this, let me offer three real-world analogies: the microwave oven, the steering wheel, and the radio dial.
The Microwave Oven: Simple Dials, Sophisticated Cooking
Early microwave ovens had three basic controls:
- Power setting (sometimes fixed),
- Timer (how long to cook),
- Start button.
These haven’t changed. What has changed is the oven itself—now more powerful, more compact, and more energy-efficient. But you still use these same controls to interact with it. You don’t need to change the dials when the microwave becomes more advanced—the dials simply unlock more powerful functionality.
The Steering Wheel: Turning Through Time
Motor cars have come a long way. From horse-drawn carriages to autonomous vehicles, technology has evolved dramatically. But one thing has remained: the steering wheel. Originally a tiller, the modern steering wheel performs the same function—turn left, turn right. The cars got smarter, but the user input device remained.
We don’t question whether the steering wheel is obsolete just because cars now come with cruise control and satellite navigation. It still performs a core, irreplaceable function.
The Radio Dial: Old Hardware, New Music
Back in the 1920s, Radio Ceylon was broadcasting news and entertainment across Southeast Asia. Fast forward a century, and we now stream Taylor Swift or BBC World News through digital radios or smart speakers. The content and the hardware have changed—but the basic user interaction is the same: a power button and a frequency dial. You switch it on, and you select.
Now Consider Excel
Excel itself—like the microwave, the car, and the radio—has evolved enormously since the early 1990s. But the mechanism for controlling it, the dials if you will, remains VBA: Visual Basic for Applications.
Back in Excel 5 (1993), if you typed Range("D4").Interior.Color = ...
, you were limited to 16 basic Windows colors. The same VBA command today accesses over 16 million colors. Same language, same structure—but vastly more powerful output, because Excel has evolved.
Shapes are another good example. Before Excel 2007, shape manipulation was rudimentary but fast. In 2007, Microsoft re-engineered the shape system to be more powerful and flexible. The VBA used to create or manipulate these shapes remained the same, but the possibilities exploded.
VBA Is the Dial That Turns Excel’s Engine
VBA isn’t the engine. It’s the control system—the steering wheel, the dial, the button. What it controls is Excel’s object model—the internal components that make Excel function.
Crucially, these objects fall into two types:
- Visible objects – like cells, charts, or shapes—things you can manipulate manually via the ribbon.
- Invisible objects – the hidden powers of Excel that cannot be accessed from the UI.
One of the most powerful invisible components is ADO – ActiveX Data Objects. It allows Excel to:
- Connect to external databases,
- Download and upload data,
- Enable real enterprise-grade, client-server spreadsheet architecture.
ADO has been part of Windows and VBA for nearly 30 years. It’s not on the ribbon. Most Excel users have never heard of it. But it’s central to building scalable solutions with Excel in a professional environment. No other Excel tool—Power Query, Python, Office Scripts—can rival the simplicity and power of VBA + ADO for database-connected automation.
What’s Really Obsolete? The Knowledge. Not VBA.
Most Excel “hell” we hear about in the enterprise—the versioning problems, the brittle links, the chaos—is not due to Excel itself, or to VBA. It’s due to misuse, poor design, and lack of awareness that powerful architectural tools exist within Excel.
If you write off VBA, you write off your only direct access to many of Excel’s most powerful capabilities—especially those needed in business process automation.
The function of VBA cannot be replaced unless something else emerges that does the same thing: tightly, programmatically, and accessibly manipulate Excel’s object model. Nothing has yet.
The Simplicity Argument
To those who say VBA is outdated, consider this: the round wheel hasn’t been replaced in 5,000 years. Not because we lack imagination, but because it works. Marketing trends may try to sell us square or octagonal wheels, but when the rubber hits the road, it’s still the round wheel that delivers.
Likewise, VBA remains the simplest, most effective interface for controlling Excel’s engine. It’s not just for beginners—it’s for those who want to make Excel do more, efficiently and scalably.
In Conclusion
VBA isn’t obsolete. It’s essential. Not because it’s fancy, but because it’s fundamental.
If Excel is to remain relevant as a business transformation tool—and it certainly is—then VBA will remain the dial that makes it work. The more Excel grows, the more important that dial becomes.
If you think VBA is outdated, perhaps it’s not the tool—but your understanding of the tool—that needs an update.
#ExcelReinspired
Bringing back the power you were never taught.
Add comment