VBulletin 3 already has this built in
Admin CP->Usergroups->Promotions->Add New Promotion.
Select the usergroup you will promote from (in your case.. the user group with less than 10 posts). Put "10" in the posts field (ignore the other options above it). Then select "posts" as promotion stradegy.. then select the new usergroup for this user in the "Move User to Usergroup" option.
Once an hour (or as you set it up in the cron options in VB3),VBulletin will look for users in user X that have more than 10 posts and move them to your specified group Y.