I'm having the same problem... admittedly I'm new to VBA and Excel programming but I have a hunch... my code calls the print preview in the middle of a bunch of other stuff. Is the fact that the code isn't at a breakpoint possible behind causing the ribbon to be disabled? In case that was less clear when I typed it than it was in my head here's how my program works:
I have a modal form that loads when the excel file loads. From the form the user clicks check boxes to select different actions (like prepare a report sorted by last name, prepare a report sorted by id number, email a copy of the report, etc.) and then clicks a run button. The run button brings up an open dialog and asks the user to browse to a text document that contians raw data.
When the user finds the file and clicks open, the system imports the data from the text file, cleans out anything the user wouldn't want (page numbers and weird headers and footers and such), and then does whatever the user asked it to do on that form. If the user requests a print out of a report, the system opens a print preview of the report and then waits for the user to close the print preview before moving on to the next task (which may be to open some other report in print preview or to export and email or to just return to the form and stop). In 2003 and previous versions of office, this code has no problem but in 2007 it chokes at the preview and locks out the buttons on the ribbon.
If my hunch is right, can I somehow tell excel to suspend the macro until the user prints or closes and then have it resume after? Will that solve the problem? Thanks for the help!