If it doesn't boot even when manually specifying the boot device, the bootloader (GRUB) may need re-installation on the external hard drive. (Goodness knows if Windows did something...)
From a live session, find out which block device your external drive is.
sudo fdisk -l
For instance, if it's /dev/sdb1 execute:
sudo mount /dev/sdb1 /mnt
sudo grub-install --boot-directory=/mnt/boot /dev/sdb
Replacing sdb1 with your drive.
This will have rewritten the bootloader to the external drive, just in case it was missing.