I haven't dug into the nitty-gritty of Application.OnUndo and Application.OnRepeat, but it doesn't look like the code you found would work for you since the actions it will Undo are actions performed by VBA not user actions; moreover the few poking around tests I did with OnUndo kinda worked, but it didn't preserve the stack so it'd fire the sub but you couldn't "undo" back into the user change history.
my simplistic attempts:
I can put the question out there and see if anyone else has more experience with OnUndo, but since you "know" the formatting both conditional and otherwise that you want your sheet to have at the end of the day you're probably still better off using an event handler to rebuild/standardize it. Likely ThisWorkbook's Workbook_BeforeSave instead of the sheet's Worksheet_Change as I'd originally thought; since that should I think preserve all the undo stuff, not redirect any built in functionality, and be a little less heavy handed.
Bookmarks