There's a better way to handle this than clicking refresh all or watching your workbook crawl through a VBA macro on startup. The real issue isn't just the tedium, it's that your current approach forces the entire refresh process into your working time, making you wait for data to catch up before you can actually do your job.
This user's setup is common and sensible: fifteen Power Queries pulling from stable web sources, some daily, some weekly. The instinct to automate with VBA makes sense, but it's the wrong tool for the job here. Running all those refreshes on open drags down startup because Excel is trying to pull live data before you've even seen your first cell. That's like asking a delivery truck to unload before it parks. The macro works, but it works against you.
Power Automate is not overkill for this scenario. The user is already managing multiple schedules, daily and weekly, across fifteen queries. That's exactly the kind of structured, recurring workflow Power Automate handles well. You set the refresh schedule in the cloud, and the data is ready when you open the workbook. No startup lag. No manual clicking. No VBA debugging. The tool is designed for exactly this: moving data work out of your active time so you can focus on analysis, not waiting.
The practical step is to export those Power Queries to a Power BI dataset or use Power Automate's Excel connector to trigger refreshes on a timer. Keep the workbook as your reporting layer, not your data engine. The queries stay stable, the sources stay the same, and you get a clean separation between data preparation and data consumption. That's the shift worth making, not a faster macro, but a smarter architecture.