I don't know if sendkeys is appropriate here. I'm sure it works, but how about using an excel object instead? I wonder if that would work. for instance:
would that work too?? that's pseudocode, so don't take it verbatim. It's not completely correct.
dim xl as object
set xl = getobject(, "excel.exe")
set wb = xl.workbooks("workbookname")
'save as code here
'close object and destroy
don't know if opening a .csv that way would work with the "workbooks.open" method, but obviously it does through the interface, so I would assume it does otherwise, in code.