Yes, FPSpreadsheet can't write to the spreadsheet if it's being used by Libreoffice.
What happened was that the spreadsheet was accessed without error initially.
Then a row was deleted in an external program (Libreoffice).
When my program subsequently accessed the spreadsheet, I got the error. I can't say specifically that the misreporting GetLastRowIndex() was to blame, but when I checked for an empty string when the cell was accessed, I was able to eliminate the error.
Your suggestion of using findCell(row,col) sounds like what I need: Thanks, I'll try that.
~Dave