I'm not an expert, but I had an idea, and tested it, it works great on my switch:
Create a VDN with a DID number and give it a vector similar to this:
1 goto step 3 if ani = none
2 route to number xxxx with cov y if unconditionally
3 route to number yyyy with cov n if unconditionally
xxxx = the 4 digit extension you want to route the calls if there is caller ID
yyyy = the 4 digit voice mail extension you want to dump it to if there is no caller ID
If you implement this on a system-wide basis you'll have to put it in the vector's for the main VDN's you have, if you're doing it on an extension by extension basis, you'll have to take that person's DID number and remove it and create a VDN number with their old DID number and give them a new extension where you can route the xxxx calls to.
I hope you can understand the way I've explained this. Give me your e-mail address or phone number and I'll explain more detail if you need more help.