
現在会社でMac用のMicrosoft Office X と Office 2004 を使っておりマクロの勉強をしたいと思っています。
しかし、mac版の最新officeではVBAというマクロ言語がなくなったと聞きました。いずれは会社もoffice2008にするかと思いますが、まだ先のようです。またいつかは転職してwindowsな会社に行くこともあると思います。この状況で、マクロを勉強するならやはりVBAを学んでおいた方がいいのでしょうか。それともVBAはexcelからなくなる予定で、違う言語?が今後は主流になるのでしょうか。
今の私はexcelのどのバージョンで何を学び始めるべきなのか教えて下さい。
No.2ベストアンサー
- 回答日時:
こんにちは。
今となっては、「次のバージョンで、Mac BUのVBAは復活します」という発表で、単なる騒動には終わってしまったように思いますが、現実には、Mac側は複雑な問題を残しているようです。Win側としても、VBAの廃止(the removal of VBA)は、Office 開発チームのリーダーが公式に否定しました。
Next Office:Mac will bring back VBA support(2008/5/13) で、「次期 Office :Mac は、VBAのサポートを戻します」と言っています。
http://www.betanews.com/article/Next-OfficeMac-w …
Mac Office 2008 の Mac BU (Business Unit)で、VBAが付けられていないのは事実であったし、その代わり、VBAサポートがなくなっても、REALbasicが使えるという話でしたが、REALbasic は、Officeのバージョンの互換性もなく、同じように使えるものとは言えませんでした。
VBAが搭載されなかったいきさつは、「Visual Basic にさよなら(Saying goodbye to Visual Basic)」というブログで書かれていました。
http://www.schwieb.com/blog/2006/08/08/saying-go …
それよりも前に、Windows Office 版も、そろそろ、VBAは終わりだというもっぱらの噂は、もう4~5年前から言われていたことです。
その後、Next Microsoft: Office will continue to support VBA (2008/1/23)に、「次期 Microsoft Office:、VBAサポートを継続します。」と、Scott M. Fulton, III という人が書いていますし、Excel 開発チームの Joseph Chirilov という人も、同様に、「VBAは、非常に多くのユーザーがいるので、将来のバージョンに、Excelから、VBAをなくしてしまうという計画はない」と言っています。
http://www.betanews.com/article/Next-Microsoft-O …
ただ、最初に書いたとおり、複雑な問題というのは、仮に、Mac VBAが復活しても、Win 版のように、新しい技術に対応できているのかどうか、分からないのです。そもそも、VBAで新しい技術に対応しようとするのは、ある意味ではナンセンスですが。
もしも、VBA の開発のプロの人間でしたら、すでに、OLEからCOMに移っているでしょうから、ここで書くのは意味がありませんが、Win版一般ユーザーとしても、こうした流れに安閑としないほうがよいと思うのです。
すでに、VSTO や VS2008 のProfessional 版で、Office の対応をしています。言語としては、VB.Net や C# が使えます。一部では、VSTA(Visual Studio Tools for Application)として、用意されていますから、当然、今後は、こうした言語を想定しておいても良いのかもしれません。
なお、技術の習得に関しては、1年程度で、VBAは問題なく使いこなせられるようになりますし、VB.Net の習得も、VBの下地があれば、一通りの技術は、比較的早く覚えられますが、しかし、VB.Net は、Visual Basic6(VB)時代のものとは似ていて、かなり違うものです。端的にいうと、本格的に、オブジェクト指向の技術が導入されているわけです。
一般のOffice ユーザーが頂点の技術が必要かどうかは別ですが、現実、Win 版 Office 2007 でも、直接ではないにしても、Word やPowerPoint に、VBAに、今までにはない考え方が必要になって、VBAプログラマをまごつかせます。しかし、Excel VBAでは、それに直面することがありません。Microsoft は、一体、どういうつもりなのか疑問に思うことがあります。単なる技術的に対応出来なかったというような話ではなく、それとはまったく逆で、Excelこそが、古い技術を温存しているだけに過ぎないように思うのです。
いずれにしても、VBA=VB6は、過去のものだということは覚えておく必要があると思います。Microsoft 社では、Win版に限りますが、VS2008(Express Edition)を無償供給していますから、必要だと思えば、今のうちに習得しておく必要はあるのですが、Mac版ですと、DeveloperTool(DAC)をインストールして覚えればよいのですが、WinかMac かの選択は、ある意味では人生の選択のようなものです。どちらにするかはいいにしても、願わくば、Microsoft の突然の変更に振り回されないようにしたいものです。
詳細にご回答をいただきありがとうございます。今の自分には理解しきれない内容も多いのですが、やはり将来的にはどう転ぶかわからない、ということなのですね。いずれにしてもプログラミングは初心者ですので、その下地という意味も込めてとりあえずVBAで勉強しようと思います。ありがとうございました!
No.1
- 回答日時:
> VBAはexcelからなくなる予定で、違う言語?が今後は主流になるのでしょうか
Office 2008 for MacはIntel-Macへの対応(UB化)を最優先させた結果、VBA等の機能を搭載するのが間に合わなかっただけの事です。
Mac版とWindows版では機能に若干の違いがありますが、VBAを修得すれば便利です。
Office 2008 for MacやOpenOffice.org系の互換ソフトではVBA使えませんが、ある程度でもVBA(というか考え方)知っていれば他のマクロ言語使う場合でも少しは役立ちます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Word(ワード) office 2021へ自分用のクイックアクセスとマクロをコピーしたい 2 2023/03/11 21:15
- Excel(エクセル) マクロの付いたExcelが開けません 3 2023/02/01 10:54
- Excel(エクセル) ランダムで四択の問題を作る場合にvbaで何を学べばいいでしょうか。 1 2022/04/14 16:45
- その他(ビジネス・キャリア) 仕事のレベル感 4 2022/07/23 21:41
- Excel(エクセル) エクセルでcsvファイルを開いてVBAを使いたい 7 2022/04/28 11:12
- その他(ブラウザ) Excel VBA seleniumのedge操作について 業務上、分からないことがございまして、先 1 2022/06/20 16:59
- Excel(エクセル) vba コンパイル 4 2022/10/27 10:01
- Visual Basic(VBA) VBA アドインについて お詳しい方 ご教授をお願いします。 相談事項 現在以下の対応を実施した所、 1 2022/11/02 16:53
- その他(プログラミング・Web制作) Pythonでexcelのvbaを作成、実行する方法について Pythonで表の自動集計プログラムを 3 2022/07/09 09:58
- Visual Basic(VBA) エクセルVBA 4 2022/05/14 00:51
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
おすすめ情報