The exclamation mark is an indication that the file path/link to the original file has been broken. Make a temporary, backup copy (select the library and type Command+D) and apply the two fixes below in order as needed:
Launch iPhoto with the Command+Option keys held down and rebuild the library.
Select the options identified in the screenshot.
Using iPhoto Library Manager to Rebuild Your iPhoto Library
- Download iPhoto Library Manager and launch.
- Click on the Add Library button, navigate to your Home/Pictures folder and select your iPhoto Library folder.
- Now that the library is listed in the left hand pane of iPLM, click on your library and go to the File ➙ Rebuild Library menu option
- In the next window name the new library and select the location you want it to be placed.
- Click on the Create button.
Note: This creates a new library based on the LIbraryData.xml file in the library and will recover Events, Albums, keywords, titles and comments but not books, calendars or slideshows. The original library will be left untouched for further attempts at fixing the problem or in case the rebuilt library is not satisfactory.
I have the same problem after updating iPhoto about three months ago. I did the rebuilt a couple of times, but it only restores the thumbnails, which is not your problem. iPhoto does not allow dragging these photos to another location, and the only way I found around this problem is to email the photos to myself to do the manipulation on Photoshop or Preview