This can be a very useful tool as a public function.
I'm at work and don't have time to fiddle with this, but it seems you need to:
1. Find the number of characters after the decimal in your string
2. Coerce the string with CDbl() while setting the format to match the number of decimal places discovered in step 1.
to get you started, I found a public function to find the number of decimal places here