Success! I appear to have removed the problem in my Excel spreadsheet.
My faulty Excel file was about 13 MB in size. It had 48 worksheets in it, some of which were quite complex.
After I added more data to a worksheet, I could tell if the file was going to be corrupt because of the amount of time it took to save the file.
A "healthy" file would take about 5 to 10 seconds to be saved. But if it took more than 30 seconds to be saved I would always get the error "Excel found unreadable content in..." when I tried to open it again.
I tried removing all links to other Excel files, but the problem was still there.
I also removed some macros that I had written that cause Internet Explorer to run and load a particular web page. But the problem was still there.
Lastly, I created a new spreadsheet file and created 48 empty worksheets in that file. I then copied all the worksheets from the faulty file to the new file and saved the new file after each worksheet was copied, giving it a new name and noting the size.
I discovered that one worksheet was about 10 MB in size. This particular worksheet would also cause the Excel program to respond very, very slowly after I added more data to it. However, this worksheet was quite trivial - it had very few formulae in it, just two columns that referenced the first column, i.e. they had "=Axxx" in them, where xxx was the row number. So there was really nothing special about the calculations, and yet when I scrolled down to about row 250 the response from the program became very slow and the CPU rate hit 100% for 10 seconds every time I scrolled down one row.
So I am sure that the problem was not related to the complexity of the formulae in that worksheet.
After I copied the faulty file's worksheet to the new file's worksheet, the problem was present in the new file too - the very slow response at row 250 onwards.
I also created another new spreadsheet file with just one worksheet in it and copied the faulty worksheet into that one too. But that file also suffered from the very slow response problem, so it too had the potential to get corrupted.
I also tried deleting all the worksheets, one at a time, from the spreadsheet. I saved the file each time and noted its size. After I had deleted all the worksheets but one and had deleted all the data from the last one, the file was still 10 MB in size. So there was clearly something very wrong with the file.
So here's what got rid of the problem:
I copied the faulty worksheet, but did a "Paste Special" into the new file and specified "Values". That fixed it - no more slow response problem. I then manually entered the formulae in the two columns that originally had formulae, and the worksheet was still OK.
The new 48-worksheet spreadsheet is now only 2.6 MB in size, and the problem worksheet behaves normally - very fast response all the way down to the end at row 295.
By the way, another worksheet in this workbook has 824 rows, each row being fairly complex, and apparently has never suffered from any problems or caused the "unreadable content" error - so that is why I don't believe the "slow response/slow saving/corrupt file" problem is related to the complexity of the formulae.
I think there was something in that worksheet that was hidden, corrupt and huge, and got copied with the "Copy/Paste" command. The "Copy/Paste Values" command appears to leave it behind.
If I get a re-occurrence of the problem, I will post about it here but, for now, I'm happy that my 11 year old spreadsheet (that started life as a .wk4 file
) is now healthy again. Touch wood.