ECMA/Microsoft did not provide how to handle macros in OOXML. Some standard bodies made some remarks (CZ-0028 and CA-0026) about the lack of documentation on how to handle this "MacroButton":
This describes a "MACROBUTTON" field which can run a designated macro or command. But there is no mention of what programming language or API’s are allowed for such a designated macro or command.
The ECMA/Microsoft's answer is not providing anything to be sure your macro will be interpreted in the same way on all platforms (Windows, Linux, OSX, Plan9, VxWorks, etc…):
The mechanism by which the command specified by text in field-argument-1 is located and/or executed by an application is implementation-defined.
Implementation-defined means competitors of Office 2007 will be left in the dark on how to provide macro compatibility with the dominant office suite.
Good Bye interoperability!
