I have already installed Ubuntu on my computer's hard drive. But I want to create a second partition that runs Windows 7. My computer cannot read DVD's (it's that old) so I have the Windows 7 iso file on my desktop and a free 4gb USB that can be used to install it. I would also like to be able to boot into this separate Windows partition.
Use the "GParted" tool available from the Ubuntu Software Center (package name is just "gparted") to create a new NTFS partition for Windows to use. Note that it may need to be a primary partition (as opposed to a logical, or extended partition).
To create the bootable USB drive with the Windows installer, you'll find how-to's in other places across the web. Once you're in the installer, be sure to specify the partition you created using GParted rather than letting Windows take over the entire disk.
If you haven't already made a partition, use gparted to resize your first partition, and make another NTFS partition, this may need to be done on a live cd, http://sourceforge.net/projects/gparted/files/gparted-live-stable/
Then use the Windows 7 USB/DVD download tool, http://www.microsoftstore.com/store/msstore/html/pbPage.Help_Win7_usbdvd_dwnTool Basically you run the tool on windows(wine doesn't seem to work with it) to install the iso on your usb.
Then boot your pc to the usb, del usually gets to bios options, F8 many times lets you select the boot device (check you BIOS/motherboard manfucture information for more details or for what keys to press) tell windows to install on you empty partition, be very careful to choose the right partition to install to. This will install windows but It will overwirite grub, so you need to re install Grub, via the Boot-Repair tool on a Live cd https://help.ubuntu.com/community/Boot-Repair , https://help.ubuntu.com/community/Grub2#Reinstalling_GRUB2.