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.
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!
You can choose to learn how to do it yourself _ or call in someone(an Excel VB Solutions Developer for instance) who knows how. Again, this would be dependent on your purpose, how proficient you are, and/or how much time you have at your disposal. Ultimately, even if someone develops a custom application for you, it should happen with YOUR guidance at every point to ensure that it does EXACTLY what you want it to do, and that you can easily _ with your developer's support/coaching _ learn how to make modifications to it in future, without needing to call back your developer.
I am keen to encourage individuals and organisations to explore using advanced MS Excel formulas and functions, in conjunction with Excel VBA programming, to develop customised spreadsheet applications that will solve typical problems end_users encounter daily in trying to record/analyse data and generate reports.