With the introduction of the new Office 2008 productivity suite for Mac OS X, planned for late 2007, companies that rely on Visual Basic for Applications scripts and macros on Macintosh and Windows clients will lose transparent cross-platform compatibility.
This will happen because Microsoft is abandoning VBA script and macro support with the introduction of the new productivity suite.
In addition, the recently released Office 2007 for Windows introduced a new default file format, the OOXML (Office Open XML) .docx format, which is not compatible with Office 2003 on Windows and Office 2004 on Mac OS X. OOXML will be the default file format for Office 2008 also.
As a result, Microsoft and others are scrambling to offer options to regain at least a limited degree of compatibility for future Office users.
Companies that currently support a mixed Mac and PC environment wont have to confront this problem as long as they continue to support the current Office 2003 and Office 2004 suites. But they will have to confront the cross-platform compatibility issue when they decide to upgrade their applications and computers.
But to give customers a new path to compatibility, Microsofts Mac BU (Macintosh Business Unit) released in late May a “provisional” stand-alone, drag-and-drop file format converter tool for Mac OS X.
This tool allows users to convert Office 2007 docx documents to the RTF format. The company has also said that this tool will be updated later this summer to become a built-in feature of Office 2004 and will allow users to open of Office 2007 Excel and PowerPoint files. This update will be delivered as part of the automated Office update process.
In addition, Apple declined to confirm or deny recent rumors that the upcoming Leopard version of Mac OS X will include a version of TextEdit, the built-in word processor, that could open and save to the .docx format.
But even with the converter tool, cross-platform installations will face problems. Currently, the stand-alone file format converter tool strips Office 2007 files of their attached VBA scripts and macros, although the upcoming revision of the tool may change this.
According to a Microsoft representative, “the Mac BU plans to update the stand-alone converter to enable editable access to VBA macros sent from Office 2007 users,” though the timing on this update has not yet been determined. In addition, the final integrated converter should allow users to execute, view and modify VBA macros within files sent from Office 2007 users.
But in the process, Office 2004 users will have to remember to save their documents to the .docm format in Word, .xlsm in Excel and .pptm in Power Point. According to Microsoft, this is due to Windows security concerns, and will allow IT departments to manage whether files with macros attached will be allowed through network firewalls, for example.
If a company moves it Macs to Office 2008 but keeps its PCs on Office 2003, said Microsoft, “although Mac Office 2008 users will not be able to execute, view or modify VBA macros within files sent from the Office 2003 users, the files themselves can be edited without affecting or changing the macros.”
Should both Macs and Windows-based PCs go the upgrade route, according to Microsoft, the situation will be the same for Office 2008 users with regard to macros as if other users had Office 2003, and Office 2008 users will need to use the special .docm, .xlsm and .pptm file formats when sending to Office 2007 users.
Keeping Office 2003 for Windows-based PCs and Office 2004 on Macs would retain the current level of compatibility, with a shared file format and VBA support.
Some Office users have expressed exasperation with the loss of cross-platform VBA support, even posting comments on the Mac BUs own blog decrying the decision as inconsiderate to Mac users. They have also said that the Mac BUs advice to start from scratch using AppleScript, Mac OS Xs native scripting environment, is not a replacement. (AppleScript itself is not cross-platform, running only on Mac OS X.)
Making the Transition
But with Apples move from IBMs Power PC processors to Intel chips, the Mac BU had to revamp its software development process, said Neil Ticktin, the publisher and editor-in-chief of MacTech, a magazine targeted at Mac OS X developers. Ticktin also said that, “the amount of effort it would have taken to move VBA to the new Mac Office would have delayed the release significantly.”
In addition, Ticktin said, “at some point—years off—VBA is going to go away and be replaced with .Net.”
In an attempt to ease the transition as Office 2008s release approaches, MacTech has released “MacTechs Guide to Making the Transition from VBA to AppleScript” to help Microsoft Office users migrate their VBA scripts to AppleScript.
This is not simply an academic issue: Microsofts Office 2008, the new version of the software suite for Mac OS X due later in 2007, will not support VBA scripts and macros, on which many companies have standardized their workflows.
The MacTech guide, Ticktin said, will be of use to anyone who wants to use the upcoming Office 2008 suite which will be the first version of this application to be a Universal Binary—that is, run natively on both Power PC- and Intel-based Macs.
“For anyone who uses VBA macros in their workflow, now is the time to move from VBA to AppleScript,” Ticktin said.
Ticktin said he had been impressed by how easy it was to write AppleScripts that replaced the functionality of old VBA scripts and macros. “Itll be a real upside for some people, in that theres more you can do with AppleScript and Office—you can integrate automation with the Finder, FileMaker, other applications,” he said.
Nik Friedman TeBockhorst, a business applications and data manager for Penton Media, in Loveland, Colo., said that he will have to deal with the cross-platform compatibility issue if his company makes the jump to Office 2007 (on PCs) and Office 2008 (on Macs).
“For the most part, were mostly PC-based,” he said, noting that there are some company managers on Macs and that they need to be able to work with financial spreadsheets.
“We end up not doing a lot of automation,” TeBockhorst said, adding that he found that VBA support on Macs seemed “substandard” and “unreliable.”
“In general, Mac Excel is limited compared to the PC version in that it cant share with external databases as well,” he said.
TeBockhorst said that there is some interest in Mac users at his company in the upcoming Office 2008 version, mainly for the promise of improved performance on Intel-based Macs. However, he said he may end up putting the Mac-using managers on PCs, or installing a virtualization environment such as SWsofts Parallels to run a Windows version of Office on the Macs.
If his company upgraded to Office 2007 and Office 2008, he said that hed lose the ability to manage a single version of various spreadsheets, such as expense reports, company-wide. “Id have to develop two different documents,” he said. His other choice would be to just let the ten to 15 percent of his companys approximately 2,000 employees who use Macs fill the forms manually, he said.
TeBockhorst added that he is aware of the AppleScript transition guide, and that he is familiar with AppleScript. However, he has not yet tried to migrate any of his companys VBA scripts. He said he doesnt see that that step would be much of a problem, and praises AppleScripts increased capability to do things such as communicate with non-Office applications. However, he said that this would do nothing to alleviate cross-platform compatibility issues.
TeBockhorst said that he cant predict the direction his company will take, but he said that this situation could serve to further marginalize the companys Mac users.