Hi Tom, maybe you have some typos in your sample? Is the OLE object NVO_OLE or IO_OLE?
Assuming IO_OLE, you should be doing something like this...
OLEOBJECT | io_ole |
for loopCounter = 1 to fileNameCount
io_ole = Create OleObject
io_ole.ConnectToNewObject( "Excel.Application")
io_ole.ConnectToObject( path_and_file_name ) // pass in the path and file name
// do some processing // this part works as expected for the FIRST file
io_ole.DisconnectObject ( )
destroy io_ole
next