When you have a big vba macro / code which needs to run for many minutes, you can change the cursor to the hourglass or waiting cursor (based on your system setting) for the period when the macro is running. Once the macro is completed, the cursor can be restored back to the default cursor.
This is a sample code which shows how you can change the cursor.
Application.Cursor = xlWait
Application.Cursor = xlDefault
The applications/code on this site are distributed as is and without warranties or liability. In no event shall the owner of the copyrights, or the authors of the applications/code be liable for any loss of profit, any problems or any damage resulting from the use or evaluation of the applications/code.