I've been able to fix my iTunes so that the exclamation marks are gone and it plays my music but it was tedious and took me three days to do.
Open iTunes preferences and click the "Advanced" tab.
Make sure that the" iTunes media location folder" is the iTunes folder on your external hard drive.
Open iTunes, select an albumn and delete all of its tracks.
iTunes will ask you; "Are you sure you want to delete the selected songs from your iTunes library?"
Choose "Delete songs"
iTunes will then ask you; "Do you want to move the selected songs to the Trash, or keep them in the iTunes Media folder?"
Choose "Keep files." (If you move them to the trash you won't be able to complete the next few steps.)
Open a Finder window, select the external hard drive and look in the iTunes folder for the albumn that was just deleted. If you selected "keep files" in the step above it should be there somewhere.
Select all the tracks in the albumn then drag and drop them into "Library" section of the iTunes sidebar.
The albumn should appear in iTunes without exclamation points and ready to play.
I did the same steps above for my Movies and TV shows and everything worked fine.
In theory, you could delete everything from iTunes and then drag and drop everything from your external hard drive into iTunes in one go but I wasn't game to try that - thought it was safer to do things one small bit at a time 😉