I had the same problem after finishing the installation of Ubuntu on my friend’s laptop where Windows 7 was previously installed. It appears that either grub2, or the way Ubuntu implemented grub2, does not detect Windows partitions properly. Both the startup-repair from Windows disc and Boot-repair disc from Ubuntu failed to correct the error. So I decided to have a look at the grub entries.
I fixed it by highlighting the Windows 7 loader entry on Grub menu and press ‘e’ to edit.My insmod was set to ldm and the set root was set to /ldm/(somehexnumbers)/volume1. So I managed to edit these two lines and pressed Ctrl+X to check whether it solves the problem. Leave the other things as it is.
insmod part_msdos
set root='(hd0,msdos1)’
Surprisingly it loaded Windows. But this editing was just a temporary one and you need to make the permanent change. If it works for you, boot back in to Ubuntu and edit /boot/grub/grub.cfg. Look for menuentry the name of your boot profile, edit the lines as above and save, reboot. Hope this might be helpful and if so, share it…