Perhaps there's a way we can improve the DataLink query to be more optimized by utilizing bulk calls to reduce the amount of time it takes to open your spreadsheet. Please take a look at the following documentation and see if making the changes suggested to utilize bulk calls helps with the time to open your spreadsheet. Additionally, you mentioned that you're retrieving a calculated daily average for the tag for the previous year. Is this average being calculated "on the fly" through DataLink's "Calculated Data" function? If so, that process is likely a large amount of the retrieval time. Would you consider using an Analytic to find the daily average for this tag and storing it in a second tag so that it can be retrieved thus reducing the amount of client side calculations that need to be done?