If are unsure of your data, you might identify the offensive values with something like this:
[font="Courier New"]SELECT whatever
FROM wherever
WHERE ISNUMERIC (whatever) = 0[/font]
Since it takes just one single bad apple to crash everything, you just might get lucky and and only have a few to fix.
You could also do something like this:
[font="Courier New"]SELECT whatever, CONVERT(float, whatever) AS fl_whatever
FROM wherever
WHERE ISNUMERIC (whatever) = 1[/font]
But if you limit yourself to that, you do not know what else is left behind. I hate loose ends left dangling. Better to deal explicitely with the exception.