Yep, that would do it, depending on how the macros are coded.
Workbook_SheetChange will run whenever a change is made on any sheet in the workbook unless specified within the macro code.
So when you make a change on the sheet, that macro triggers and wipes out any chance you had of undoing anything up until that point.
I think this only happens with macros that are affecting the sheets in some way, though. For example, if I run a macro that does nothing but display a message box, I am still able to use 'undo'. But if I run a macro that puts a value in cell A1, the undo arrow becomes grayed out.