What can VBA do?

VBA can do basically anything any other development language can do. Other languages may be faster, more robust, or more secure, but VBA is tightly integrated with Office Applications and that gives it unique advantages. Here are some examples.

User Defined Functions
VBA can create Excel functions. We call VBA created functions:
User Defined Functions or UDFs. Fantastic examples are found in the commercial product, PC*Miler Spreadsheets. PC*Miler Spreadsheets gives Excel the ability to calculate mileages, routes, tolls, and travel time between two addresses or two GPS points and it predates similar functionality in Google Map's API by many years. We can also build our own UDFs. Back in 2017 I created a function called XLOOKUP() because I needed a simple Excel function that could find records based on multiple keys and could work as easily in Excel's spreadsheets as in VBA's applications. Two years later, Microsoft introduced XLOOKUP(). I guess great minds think alike ;)

Enhanced User Interfaces
VBA can create
User Forms to add in data entry.
VBA can add worksheet
buttons to launch macros.
VBA can work with the
Ribbon Editor to add icons, dropdowns, check boxes, image galleries and more.
VBA can add double-click
drilldown to charts.
VBA can add
drag and drop interfaces to match objects to actions, such as assign a worker to a schedule