Sounds like stuff I used to do on occassion.
Back then used to use Perl (since I don't know VB) to:
1. parse a plain text input file (in your case, if input has to be Excel, I'd have tried to use something like the Spreadsheet::ParseExcel module)
2. convert to a SOAP XML query using the SOAP::Lite module
3. send query to remote server (still SOAP::Lite)
4. receive SOAP response with result (still SOAP::Lite)
5. parse response (still SOAP::Lite)
6. write output to plain text (again, if out has to be Excel, perhaps Spreadsheet::WriteExcel would do the job?)
But I'm willing to jump through hoops to use a language I know (and VB I don't). If you know Perl though, SOAP::Lite is super easy to work with…