The reason why the files are broken is usually file fragmentation. The recovery program finds the entry and knows its size and location. Many programs just do a data grab and grab that many bytes and hope for the best. Some grab more bytes than necessary praying they got it all and sometimes that works.
On other occasions the file is NOT contiguous and so some other random file is mixed in with the first file. When office detects the random data it says "I don't know what this is junk is" so it barfs(for lack of better word) the rest of the data raw into the document hoping for the best.
Here is a way over simpified example.
FAKE Sample data
1 10 6 5 129 129021 1291239 scooby 12 349 394 935 2349 1923
In real life the markers are way more complex than just finding a letter where numbers should be so they can not easily be automatically detected.
If the software is expecting a number and it finds "scooby" it is not a number so it panics because it does not know what to do.
You could try a better recovery product like Photorec(free) by cgsecurity or buy RStudio or getdataback for ntfs or one of a hundred other programs.
Use the below software to try to fix the damaged files you have.
http://www.officerecovery.com/excel/order.htm
OR
https://online.officerecovery.com/
There is a real tool to repair your damaged office files.
Try the free thing or buy it.
I have tried a dozen programs and there software did the best job for me.