Theoretically, it is quite possible **IF** you have the bad sectors localized in a particular spot.
What you would do is find the location of the sectors, calculate out the size of the free space -before- the bad spot, then create a partition starting at sector 1, going up to a few sectors before the bad spot. Then, create a secondary partition specifying a start sector a bit past the bad sectors going to the end. I think you would have to do this in Windows using the command line and diskpart utility.
Assuming that your external disk is disk 1 (VERIFY THIS BEFORE EXECUTING IT!! 'list disk' - then check and match up the size with the disk you have attached), and that your bad sectors are at 500mb on a 1tb drive
>select disk 1 (this selects the disk)
>clean (this erases all parition info)
>create partition primary size=450000 (this creates a primary partition of the size in megabytes. so 450GB == 450,000 MB)
>create partition primary size=450000 offset=505000000 (this creates second partition of size 450GB starting at 505GB, the offset is specd in KB, not MB or GB, hence the rather long number)
>assign (this assigns drive letters to the partitions and will pull up the 'do you want to format this drive' box.
>exit (exits the command line)
Now, I haven't tested this, but it gives you the basic idea on how it should work. Depending on your disk size and where the bad spots are located you will have to do the math to determine exactly where the bad sectors are. I would find an utilize a graphical disk check utility to help identify where the bad spots are to assist in doing the math. I will also caution you that a drive that is starting to show bad sectors should not be used to store any kind of important data as it can go from a few bad sectors to a bunch of bad sectors and an unreadable drive very quickly.
Let us know how this goes.