I did it a couple of times on different tanks.
It all depends on how much live is in the existing sand bed and what is going to be the new substrate.
If it is a mature DSB, go slowly, syphon 10%, wait and watch.
If it is fresh sandbed, you have the luxury to remove it faster.
In one occasion I have used a very thin sand, which caused sandstorms and was in a two weeks old tank. I did syphon it completely in about an hour, with no side effects.
The replacement sand was from previous tank, washed with fresh water and bleach. I have added this sand relatively fast, something like 10kg/day for 3 days.
Be mindful of what is going to replace it. I once used brand new aragonite, not washed it enough and added too much at once. Water turned white, stayed like this for a day and I lost some corals and fishes.
Also, use a PCV pipe to drive the new sand to the bottom and minimise small sand particles in the water column. Adding sponge or perlon to some pumps helps with particles.
Personally, I would never refill it with 100% live sand as it is likely it will cause a spike.