I think it is not possible to give a very specific answer to your question. Performance is impacted by many factors: the amount of data in you database, system resources, indexes, the queries used etc. And a large set of data will of course take more time than a smaller set.
In order to find the factors that affect performance in your case, some suggestions you may try. For each action check how that affects performance in your situation:
- limit the dataset to export to 1 record.
- limit the data in your database to a minumum
- see if you can identify expensive queries and remove the parts that you feel are expensive, just to see what the effect is (eg complex joins)
- try exporting to csv instead of excel
- try exporting only one column of data to excel
A workaround can also be to create the export in the background so the user can continue using the system in the mean time.
I hope this gives you some options.
Data limitation helped for me. However, the performance was still unsatisfactory.