Not quite. The workbook is created with $Excel->Workbooks->Add, so the original file name is 'Book1'. I want the user to save the spreadsheet themselves (if they want to), but give them a 'default' name of something better than Book1. So when they do a 'Save As' from Excel, the file is already named correctly; they just need to pick the folder they want to dump it in.
If I can give the Add method a file name without it complaining that the file doesn't exist, that would work also!
Sorry, I was actually not familiar with the Win32::OLE module (at all), but I've taken a quick look-see and here's what I've gleaned...
It sounds like you're trying to automate some part of creating a spreadsheet while a user is editing that same spreadsheet. To me, that sounds like a recipe for a mess, but I don't really know what it is you are ultimately trying to do. If it were me, I would have the script take in parameters up front and then have the script do everything instead of having both the user and the script working on some spreadsheet at once.
So for your case, I would take the folder they want to dump the excel file in up front as a parameter to the script, and just go ahead and create the workbook in that folder. Now they have a saved workbook with the proper name in the proper folder.