My grandmother's backup hard drive (D drive) had bad blocks and isn't accessible. She was told that it would cost $200 to repair it to a state where she can backup files herself. The repair shop said she should backup her own files because it would be cheaper for her. The hard drive is between 200-300 GB. I would say it's 50-80% full, I think. What would the repair shop be doing that costs $200? Also, just out of curiosity, can bad sectors or a bad hard drive cause slowness that could be temporarily fixed by being reformatted?
Probably running spinrite. You could try that. I know of one other utility that might help, which is hdd regenerator. I think you can trial that last one. Both have recover/restore options. hdd regenerator doesn't pay attention to the filesystem, just tries to "correct" each sector. Both have the potential to ruin the filesystem completely, but you can't read the disk anyway, and I doubt the shop can do any better. There may be other data recovery tools out there. I trust you have already tried chkdsk in recovery mode? You can run it from the command line or from "properties"/"tools" from explorer. At least you can in XP. My experience is that it is not very good if the disk is really shaky. The other 2 are better, but can take a long time to run. Of the two, I think you'd be better off with spinrite, if you can get hold of it. I believe it is several years old now.