I'm looking for suggestions as to the cause / solution to a spinning beachball every time I try and copy/paste in Excel. This happens more on some spreadsheets, but is happening in one I use frequently which is only 700kb. I am using Office 365, and my MBP is 2018 (2.6 GHz i7, 32GB RAM), running Catalina. It does however seem independent of device, as I recreated it on my partners MacBook Air (2011, 2.0GHz i7, 8GB RAM) running High Sierra. The desired file is stored locally but mirrored in iCloud).

I am aware that was a problem in Office 2011 for Mac, but my online search hasn't found posts with this problem recently. I have tried an older suggested workaround of copy/pasting a blank cell in a blank spreadsheet before opening the desired file as suggested at Excel 2011 copy and paste beachball hang freeze issue

I have also tested with desired file mirrored on a different cloud, and also just saved locally without any cloud mirroring, - all have similar problems.

Thanks @pion for the specific detailed advice to capture what my system is doing when it happens. This is available at https://gist.github.com/KathParamedic/6b13f7556c76e8ba0255579e2f3322d6

Thanks in anticipation


The procedure for investigating a generic process hang when you have no other hints is to collect a symbolicated spindump of the system. What this does is take a bunch of freeze-frames of all user and system processes (including the kernel) for 10 seconds and shows you how much of that time is being spent in any given function call stack. By finding the stacks where a lot of time is being spent, you can usually get a good idea of where the slowness might be coming from and then focus your investigation on that. We collect a system-wide spindump rather than just the dump for a single process because it is common for system calls and/or interprocess communication to be involved in these sorts of hangs.

Here are the steps:

  1. Run the following Terminal command to enable kernel symbolication: sudo nvram boot-args="keepsyms=1". Make sure to copy-paste this so that you're entering straight quotes ("") rather than curly/“smart” quotes (“”) - it's a very subtle difference. (Important: If you get a permission error when doing this, you will first need to disable System Integrity Protection. You can re-enable it after you're done with this investigation.)
  2. Reboot your machine and don’t open any apps except for Terminal.
  3. In Terminal, enter the following command, press Return, type in your password, but do not press Return again yet: sudo spindump -reveal -noProcessingWhileSampling
  4. Open Excel and start your normal workflow. Continue until you start experiencing the beachball.
  5. As soon as you get the ball, go to the Terminal window where you entered your password and press Return so that the command begins to execute. Do not do anything else on the computer while it's running, otherwise you will distort the data collection.
  6. After waiting for >10 seconds to collect a sample and another minute or two to symbolicate and format, you’ll get a file in /tmp/spindump.txt that contains a stackshot of every process.
  7. Upload the file to PasteBin or some equivalent place and add the link to it to your original question.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .