Microsoft urges customers to prepare for VBScript deprecation in their Office VBA macros

Alfonso Maruccia

Posts: 2,570   +956
Staff
The big picture: The Windows ecosystem has offered an unparalleled level of backward compatibility for decades. However, Microsoft is now working to remove as many legacy technologies as possible in the shortest possible timeframe. While these changes will likely improve security, enterprise and professional customers may be frustrated by the impact on their workflows.

Microsoft first announced plans to retire the Visual Basic Scripting language in 2023, giving developers and organizations ample time to prepare. The company is now reiterating that VBScript deprecation is imminent, which could significantly affect custom automation solutions integrated with Office applications.

VBScript has been a core part of the Windows experience for decades. Introduced with Windows 98, the Windows NT 4.0 Option Pack, and Windows CE, the technology was modeled after the Visual Basic programming language to provide a powerful automation environment. Thanks to VBScript, power users and programmers could exert greater control over the Windows operating environment.

The language was closely tied to Internet Explorer and is now largely obsolete, as modern Windows includes more robust scripting environments like PowerShell. Additionally, VBScript has been frequently exploited by malware authors to enable notorious security threats such as Lokibot, Emotet, the Love Bug/ILOVEYOU worm, and Qbot.

VBScript has also been available for macros in Office applications since Outlook 97, as part of the Visual Basic for Applications (VBA) dialect of Visual Basic 6.0. Microsoft notes in a recent blog post that its deprecation will have a noticeable impact on organizations relying on VBScript within VBA.

The VBA language can automate tasks and extend the capabilities of Excel, Word, PowerPoint, and other modern Office applications, Microsoft explained. In practice, VBScript is often used either by loading external .vbs scripts from a VBA application or by referencing VBScript type libraries for regular expressions (RegExp).

Microsoft's Principal Product Manager Wenjun Gong provided an updated timeline for VBScript deprecation in VBA, broken into three distinct phases. The first phase, already in place and continuing through 2026 or 2027, enables VBScript by default as a Feature on Demand, ensuring that existing VBA projects and applications continue to function as intended.

The second phase, set to occur within the next two years, will disable VBScript FODs by default. The third and final phase – still to be defined – will mark the complete removal of VBScript from future Windows versions. External .vbs scripts in VBA macros will no longer be supported, and using the VBScript RegExp library will break VBA apps if Office is not updated to a newer build.

Microsoft recommends that developers switch to the newer RegExp programming tools available in VBA for Office version 2508 or later (Office 16/2021). These latest Office releases no longer require external references to vbscript.dll. Microsoft is also promoting the Microsoft 365 subscription service as a solution for continuing VBA automation and RegExp programming after VBScript is fully removed. Of course, this requires a recurring monthly subscription.

Permalink to story:

 
So.....is Microsoft just determined to speed run the demise of all their products? The loss of publisher is already a big hit, and now VBS is going away?

If you have to remake your tools, why wouldn't you make them work with Google docks or libre office? Why keep paying for MS office?
 
My guess is the real reason they kept this prehistoric crap for this long is because its first version was written by Bill Gates himself. Visual Basic is how Microsoft really took off.
 
My guess is the real reason they kept this prehistoric crap for this long is because its first version was written by Bill Gates himself. Visual Basic is how Microsoft really took off.
The reason they kept it is because legacy applications and backwards compatibility are Microsoft's entire business model for Windows. Business applications built around stuff are very expensive to replace and no other platform had the long support of Windows.

With Active Directory being depreciated for Intune (bleh) backwards compatibility is all MS has left. They've been aggressively chipping it away for years now, and I guess they'll have to lose their dominant market before realizing that nobody actually likes their garbage product, and MS has managed to destroy the one reason people kept it around.
 
The reason they kept it is because legacy applications and backwards compatibility are Microsoft's entire business model for Windows. Business applications built around stuff are very expensive to replace and no other platform had the long support of Windows.

With Active Directory being depreciated for Intune (bleh) backwards compatibility is all MS has left. They've been aggressively chipping it away for years now, and I guess they'll have to lose their dominant market before realizing that nobody actually likes their garbage product, and MS has managed to destroy the one reason people kept it around.

I agree on the overall take. I still service what are considered state of the art weather forecasting systems and almost all of the scripting for them is still done via VBS. These are all Windows 10 2019 LTSC systems though.

As for Active Directory being deprecated... It hasn't officially happened yet, but Microsoft wishes it could kill AD, no doubt about it. However, even as recently as a couple of months ago, I was at a major tech conference, and a major selling point to any of the products being sold in my industry is that you can configure their system to authenticate against an Active Directory domain.
 
Back