mac:OfficeのVBAの復活のさせ方

Mac版OfficeにVBAが復活するという。実に理にかなった決断であり、まっとうなお話である。VBAを削るという話は「暴挙」に類するものであり、ユーザーからの反発も大きかったのだろう。


http://www.microsoft.com/presspass/press/2008/may08/05-13MacBU2008PR.mspx?rss_fdn=Press%20Releases


VBAライクな開発環境を提供するREALbasicの開発元であるREALsoftwareからの開発者の引き抜きなど、水面下での動きは観測できていたため、驚くには値しないが大きな決断ではある。また、MacTech JournalのAppleScript系の記事が昨年の10月あたりから妙に減ってきた(それまでが妙に多かったので元に戻っただけだが)という現象も観測された。本気でVBAからASへの移行を促進させたいなら、AS関連記事の量は増えるはずだが……実際のところ、そうはならなかったわけだ。


ただし、現時点で判明しているのは、「次期バージョンでVBAが復活する」という話だけだ。ここで問題になるのは、「次期バージョン」と呼ばれるものが何を指しているのかという話と、VBAが復活するというが、それは本当に従来からのVBAそのものなのかという話である。また、次期バージョンと呼ばれるものがいつごろ出るのかも、現時点では明言されていない。


まず、現在のOffice 2008に何が足りないのかという話がある。実は、Excel 2008を見てみると……マクロ関係のメニューや実行用のUIなどは用意されている。実行エンジンだけがすっぽり抜けているというレベルなのだろう。ファイルを追加すれば、VBAの実行系を復活させられるものと推測している。


仮にそのレベルだと考えるなら、最低限、VBAの実行エンジンを復活させればVBAの機能が復活するものと仮定しよう(ヘルプなどもあるが、それはドキュメント作成チームの仕事だろう)。


一番簡単な復活方法は、オープンソースのOfficeもどきから、該当する部分のプログラムをひろってきて、それを実装してしまうことだ。完全互換とはいえまいが、とりあえず当座をしのぐことはできる(ただし、オープンなソースを参考にしてMSで改良した部分はソースを開示する必要が出てくる)。この方法で半年ぐらいかかるだろうか。


まっさらな状態からVBAの実行エンジンを復活させるとしたら……たしかに、これはREALsoftwareのコンパイラ開発者でなければできない仕事で、規模にもよるが……1年半から2年ぐらいは必要ではないだろうか? それほどの能力の人間なら正味10か月あればできてしまうかもしれないが、テストとドキュメント化のために倍ぐらいの時間は必要になることだろう。


仮に、2年で復活できるとする。2年後の状況を考えて、復活させるのはレガシーな「VBAそのもの」なのか、MSが移行させたいと考えているVB.Netなのか? という問題がある。 VB.Netであれば、開発環境をまるごと提供しなくてはならないし、Windows環境においてもVBAからVB.Netへの完全移行が可能なのかどうかは不明である。さらに、VB.Netであれば、さすがにアセンブラレベルのソースに依存していたりしないだろう(笑) そう考えると、過去の資産を活用すべく「VBAそのもの」を復活させると考えた方が理にかなっていそうだ。


仮に、2年後にVBAの処理系が用意できるとしても、Mac用Officeのメジャーアップデート間隔はおよそ4年である。通常であれば、次に出てくるのは「Office 2012」になるわけだが……このあたりはマーケティング的な判断になるので、そちらの意向も加味する必要がある。


今回、VBAの次期バージョンでの復活という話と、前バージョンのOffice 2004の3倍の売り上げであることが発表された。つまり、「VBAはなかったけれど、セールスは好調だった」ということをアピールしたいというのがマーケティング側の意向だと考えられる。当面はOffice 2008で頑張りたいということなのだろう。


現行のOffice 2008でVBA復活という話だと、ユーザーからは無償提供しろと言われかねない。あくまで「次期」Officeである必要がある。ただし、4年も待てと言われたらユーザーが激怒するだろう。Office 2008用にはつなぎでサードパーティからVBAのエンジンが有償で登場、次期バージョンではVBAが標準搭載される……というシナリオを支持したいのだが……実現させるには、まだ情報が少なさ過ぎる。


もう少し控えめな予測だと……2年後に「Office 2010」なる半メジャーアップデートの製品をリリースし、VBAを標準サポートという話になるだろうか。現行のOffice 2008でも「Windows版Officeからのファイルコンバータ」という使い方の範囲内であれば、とくに問題はない。「2年ほど待ってくれ」という話を顧客に行いつつ、開発が滞って結局3年かかってしまった、とかいった話になりそうだが……果たして、どうなるだろうか?

Copyright By Piyomaru Software. All Rights Reserved