Suppose the file is shared on a network location. The issue that can be found is that the catvba file is locked (by Windows OS on the server).
The first solution I did was to go into Computer Management and see the list of Open Files on the server, and force the files to close. This required IT to teach me and enable me to do it on the server. In reality, this is an IT department question and is probably never enabled to most people. So, you could request your IT help to do it for you. (By the way, I don't do that any more)
The second solution that some of my colleagues did was to end the macro code with a section that would call an external batch file. The batch file called a process killer program that would kill the 'CATVBAHostingApplication.exe' process on the user's PC. Not sure it's a great solution, but it seems to work. I didn't figure that one out, somebody who was savvy with programming did that.
Hope that helps point you in the right direction.
Mark