This last point in my opinion is ONE major benefit you must seek to extract, if you choose to engage the services of a developer. S/he should be able to help you develop (in_house) expertise needed to maintain the application AFTER s/he is gone. If you fail to ensure this, all your cost_savings from using the application might end up being spent paying the developer to maintain the application over time in the future!
A person with proven competence in this area CAN become "notorious" for developing spreadsheet applications, which eliminate drudgery from the process of using MS Excel to handle large amounts of data. Typically, work that takes hours or days will suddenly take minutes or seconds to finish.
Another question I ask, in answering the "Why Excel VB?" question is : "Why re_invent the wheel? ". My experiences(and those of others who favour the use of Excel VB like I do), confirm that to organise, and analyse data for (financial/management) report generation and decision making, you will save hundreds of hours using already in_built, pre_programmed Excel functions compared to a situation where you used Visual Basic proper. All the functions needed to achieve the above purposes already exist in Excel, so that you don't have to write them all from scratch as would be the case if you were to use Visual Basic. 3.It works even when you lack "In House" expertise.
VBA is therefore different from the Standalone Visual Basic program used(by professional programmers) for developing commercial quality software applications _ though it borrows many of the latter's features. Think of Excel VBA as being the standalone Visual Basic software, built into Excel for the benefit of Excel users who are not necessarily programmers, but who are keen to exert more control over the application. So, Excel VB offers any interested users the necessary tools to make the application deliver more functionality. The final product is still an Excel document, but with extra functionalities added using VBA.