I think the only workaround for this would be to make a macro which:
Unprotects the sheet
Runs the spellcheck
Protects the sheet.
This macro could be assigned to the existing button or a new one. You would
need a macro to run on opening the workbook to assign it and another which
ran on closing the workbook to unassign it.
I think there may be an issue that if there is an error the sheet may be
accessible to your users in an unprotected state. i.e. the spellcheck will
stop for the correction to be made and the user could then do something
else.