I think you want to define what you mean by work. Some things to consider:
* user owns projects
* user is assigned to tasks
* user is a default assignee in a request queue
* user is part of a team that gets assigned to stuff
* user is part of an approval process (task, request, project)
* user is part of an automated Proof workflow
Just "transfer" their work -- this works for task and existing issue assignments -- you could use Workload Balancer for these. For project ownership, you could run a report and bulk edit the project.
Everything else, you would have to track down via a report and reconfigure, and in the case of existing approvals, you may have to take care of manually.