I have a client with multiple linked Excel data files being linked/summarised into a monthly billing spreadsheet. Essentailly the guy can't keep a track of all the DocNums when auditing links (e.g. =[3107268_1.XLS]Data!MonthTotal) and wants to links created using the file description (e.g. =[PowerOne_0905.XLS]Data!MonthTotal)
His business process is that he will not use any of the 'Update links' or 'download source file' prompts. He will primarily use cached data and only wants data to update IF he opens a source Excel file and changes it.
To achieve this I am looking at an alternative way to checkout Excel files while keeping localfile name uniqueness using either:
RootPath\DB\DocNum\Version\Description.xls OR
RootPath\DB\DocNum_Version_Descripion.xls
(I need to test the effect of two files with the same name in different dirs).
I can:
A) Checkout an XLS file with the desired path\filename.xls then open using:
System.Diagnostics.Process.Start(Filename). However this opens the file as a local file, and closing it does not check it in. I do not want to risk a host of checked out files because the person forgets to manually check-in.

Open the file using the IMANEXTLib.OpenCmd COM object. This gives me integrated checkout and auto-checkin when closed, but I can't specify the checkout Path\filename in the ContextItems collection.
Is there any known way to have 'the best of both worlds'?
Can I do (A) then trigger off the Excel File Close event to trigger a checkin?
Can I do the checkout part of (A) then open the XLS in a integrated manner using some other method?