Too many options to answer.
From MS Access - it is somewhat easy (yet somewhat tedious) to write code that can reference an Excel document on a network (or hard drive) and "harvest" the data cell-by-cell, named range, or other methods.
It can also read almost any property of any of the Excel objects.
Case in point:
A client had used an Excel Template to keep data for 1 to many years (one year per worksheet (tab)) and saved several thousand of them across the network under various workgroup's names.
I wrote a process that searched the network drive and sub-directories. It validated that the Excel workbook did conform to the template by validating various cells.
Then it logged each excel name, network location, and key parameters (e.g how many worksheets with work sheet names such as 2009, 2010, 2011...)
It wrote that information to a SQL Server Database.
With the list, another function harvested each workbook, worksheet and worksheet properties along with the data into a relational database structure.
Then finally, each worksheet had a "Harvested on <date>" added to an empty cell for each worksheet harvested. It is a two way connection.
This provided a detailed audit of where the data came from.
The sky is pretty much the limit on variations of that.