The error occurs if the fpsallformats module is not added. lazarus / 49-FPSpreadsheet ---------------------------------------------------------------------- dvigor · 2022-02-03 08:00 The error occurs if the fpsallformats module is not added. The application compiles and runs. Maybe someone else will look for the cause ... ---------------------------------------------------------------------- PascalDragon · 2022-02-03 08:08 FPSpreadsheet itself doesn't contain the readers/writers for the document formats, they are contained in separate units. Thus you need to either use them separately (in case of xlsx it's xlsxooxml) or you can use fpsallformats which simply registers all formats that FPSpreadsheet supports. This is by design and not an error. ---------------------------------------------------------------------- dvigor · 2022-02-03 11:18 Thanks, for some reason the module was spontaneously removed from the list uses. For a long time I could not find the reason for this behavior. ---------------------------------------------------------------------- wp · 2022-02-03 12:15 Maybe you did it yourself and were not aware of its consequences. The IDE highlights this unit and classifies it as "unused". In fact, it does not contain any code and thus there is nothing which can be called from your project. That's true. But it is not "useless". It adds all fpspreadsheet reader/writer units to its uses clause, and this has the effect that their initialization code is executed and registers the reader/writer classes in your project. The IDE hint about "unused" units, however, is correct in most of the cases nevertheless. For example when you added a component to a form but later deleted the component again. In this case the unit of the component remains in the uses clause and really becomes "unused". So think twice when you remove an "unused" unit. ---------------------------------------------------------------------- dvigor · 2022-02-04 07:51 Thank you. You are absolutely right.