Try Startup Repair from a Vista install disk (or if you don't have one, use it from the Neosmart Recovery disk). It should fix your boot problems. Note though you may have to run it 2-3 times before it will boot, since it is too dumb to fix everything in one pass.
You can also do that from the Ubuntu desktop if you boot from a Ubuntu LiveCD in "Run Ubuntu with no change to my Computer" mode. Just go to Places->Computer, double-click the partition you want to open and browse its filesystem, then copy your files to an external HDD.
Note though that Startup Repair wont touch your user files. It only repairs the boot.