Well if you ask me I would say it is just a nasty way of achieving the same result. The problem lies in the version of access you are using and when you upgrade, menu bars are much more likely to change than the code syntax (I just read about this issue with one of the newer releases).
Another would be:
DoCmd.RunCommand acCmdUndo
I could probably give you sixty ways to achieve the same result however I think missinglinq was on target a lot of this depends on the person and the experiences that they have had. If I did some digging I know I could find an article that stated that the DoMenuItem was on it's way out and was to be replaced by Runcmmand but they never removed it and some of the commands you use domenuitem on aren't available elswhere.
According to the VBA help file:
Quote:
The RunCommand method replaces the DoMenuItem method of the DoCmd object
O.K. so I like to back things up with facts... Simply type in Runcommand in the VBA window highlight it and press F1