The usefulness of it really depends on what you intend to do. For example, with Excel you can create spreadsheets without ever touching VBA, but if you want to do more complex things such as linking a cell to a value in a PLC, then VBA is necessary.
VB comes in many flavors. The 3 currently most prevalent are VBA, VB6, and VB.NET .
VBA is Visual Basic for Applications which is considered a scripting language built into software packages such as Excel or many HMI software packages. It is the most limited flavor of VB and possibly even the most difficult to use for complex tasks.
VB6 is now considered an old technology dating back to about 1998, but it is still used by many. This can be used for creating stand-alone applications that compile to native code.
VB.NET is Microsoft's latest version of VB that is used for creating stand-alone applications that are based on the .NET framework. This framework consists of multiple parts that make writing applications easier, faster, and safer.
These are just some rule of thumbs because there are some exceptions. For example, you can use VB.NET to create extensions for Excel, but it is done in an entirely different manner than using VBA. The AdvancedHMI software does things slightly reversed of most other HMI software. Instead of using VBA to extend the capabilities of the HMI software, AdvancedHMI extends the capabilities of VB.NET and Visual Studio by adding an HMI specific toolset.
So if you are just a general software user only making use of the tool set that exists within the software, then VB may never be useful. But if you want to create more advanced applications with packages such as Excel, then VBA is a useful tool. If you intend on creating stand-alone applications, then VB.NET would be your most versatile and productive tool in the line of VB programming versions.