Custom spreadsheet solutions which survive long after the developer has "left the scene", are often those which users accept because they discover it _ among other benefits _ makes their work quicker and easier to do. That is why the best person to develop such solutions tend to be one who works in that area, and is therefore familiar with the way the manual system operates. S/he would have an "insider's" perspective of the best way to introduce automation other users will readily adopt _ even as it solves the identified problem(s).
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.
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!
At times, they would prefer to click a button that says "Print ABC", or "Print XYZ" report, instead of having to crawl all over the huge spreadsheet(and get "lost" every now and then), to highlight and print different report pages. Using a custom built data entry form to make data entries into 14 different cells in different parts of a table(at the same time/with one click) would, for them, be "heaven" compared to making the entries one at a time.
blank spreadsheet templates
what is a spreadsheet used for