I think Microsoft Office XP has it built into the programs. I remember opening a corrupt Excel spreadsheet with Office XP. Excel 2002 repaired it and offered me to save it as a different name and location. But if you have older versions of Office, you can try third party programs that will do just that.
Well it's a bit of a strange one, the document will open and start loading all the pages. But when it gets to a particular page it just stalls and locks Word up, so Word doesn't get a change to give me the option to repair the file.