You are right, fpsExport creates a new spreadsheet file for each export. But: the procedure where this happens (DoBeforeExport) is virtual, you can replace it by your own procedure. Unfortunately, the variable for the destination worksheet is declared as private and therefore note available in the overridden version.
When I find some time I can try to modify the TFPSExport class such that multiple datasets can be put into the same file.