Combining two objects with option to reverse

Hello,

so i have modeled a raptor and now i am going to animate it.
The raptor consists of one basic body mesh , a teeth object and an eye object.
Now here is the reason why i want to join them in one object but keep the possibility to separate them again with just one shortcut or click.
The teeth of the raptor intersect inside the mouth of the raptor which has upper and lower jaw.
I once separated all teeth vertices from the main mesh and it wasn’t a lot of fun.
So is there a way to join teeth with the main mesh so that i can animate it, but keep all their information about the vertices in some extra separated data object?
Should i create vertex groups?

Ok… i just did it that way … it works…
Created before the joining a vertex group for the teeth… ASSIGNED IT… and then joined them.

is there a way to hide vertex groups in weight paint mode?

Select vertices/faces
Hide them (H)
Enable face or vertex selection masking button on header

Use P in edit mode to separate selected vertices