VBA(Visual Basic for Applications)のサポートが廃止されたOffice 2008 for Macだが、これまで作成した文書や他ユーザから受け取る文書にVBAが含まれている可能性は高い。VBAが実行 / 編集 / 表示できなくなったことはやむをえないとしても、VBAの部分を損なわずに本文やデータを編集したい、というニーズは存在するはずだ。

そのようなときには、(VBAが含まれる)文書を開くときのダイアログで[開いてマクロを削除する]ボタンをクリックしないよう注意すること。このボタンをクリックしないかぎりは、文書に含まれるVBAのコードは無傷のまま残されるので、Office 2004 for MacなどVBAをサポートする環境に持ち込めばVBAは正常に機能する。保存方法も、上書き保存で問題ない。

マクロを含む文書を開こうとすると、警告を受ける

ただし、ファイルフォーマットを変更する場合は注意が必要。Office 2008 for Macの標準形式(OOXML)はVBAをサポートしないので、無理に拡張子が.xlsxや.docxのファイルとして保存すると、VBAのコードは削除されてしまう。そのような処理を行おうとすると、警告ダイアログが表示されるものの、一度削除してしまうと復元は困難なだけに、十分に理解したうえで実行すべきだろう。

ファイル保存ダイアログには、マクロの保存が可能かどうか情報が表示される

VBAマクロを含む文書を無理にOOXML形式で保存すると、マクロ部分が失われるので注意

以下の表は、Excel 2008の主要なファイルフォーマットのマクロ(VBA、Excel 4.0 マクロシート)対応状況だ。特にExcelブックはマクロ / VBAを活用することが多いため、Excelのみ取り上げたが、OOXML形式のファイルフォーマットがマクロに対応しない点は共通しているので、拡張子を置き換えて考えてほしい。

表12: Excel 2008の主なファイル形式のマクロ対応状況

ファイル種別 拡張子 マクロの保持
Excelブック .xlsx ×
Excelテンプレート .xltx ×
Excel97-2004ブック .xls
Excel97-2004テンプレート .xlt
Excelバイナリブック .xlsb
Excelマクロ有効ブック .xlsm
Excelマクロ有効テンプレート .xltm
Excelアドイン .xla