- ベストアンサー
Visual Basicとは エクセルに付いてるのと
Visual Basicの勉強をしたいのですが、 エクセルに附属してるのと、VBは別物なのでしょうか? 違いが良く分かりません。 VBの教育バージョンをフリーで落とせるとの事を聞きましたが エクセルに附属のものとこれも違うのでしょうか>? VBってエクセルの中で動くのではないのですか? VB単体で動くのですか?
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
>エクセルに附属してるのと、VBは別物なのでしょうか? はっきりいえば、別物です。 エクセルやワード、アクセス、アウトルックにある、VBエディターで 記述して使用するマクロをVBAと呼んで分けています。 基本となるコマンド類は同じですがエクセルにはエクセル特有の コマンドを使って記述します。 >VBの教育バージョンをフリーで落とせるとの事を聞きましたが http://homepage1.nifty.com/rucio/main/main.htm こういったサイトでダウンロード出来ます。 >VBってエクセルの中で動くのではないのですか? エクセルのVBAで作成したマクロは エクセルの中で動きます。 (それぞれのOFFICE製品のVBで作成したものはそれぞれの製品の中で動きます) Visual Basic 2008で作成した場合、エクセルのシートのようなデータベースとして使用する時には データベースの作成から作業が必要です。 アクセスなどのデータベースに接続することも出来ます。 目的にもよると思いますが、OFFICE製品がインストールされているのであれば、 それぞれのVBAを使ったほうが大変便利です。
その他の回答 (3)
- Wendy02
- ベストアンサー率57% (3570/6232)
こんにちは。 すでに、皆様から説明をされているのですが、少し、質疑の中で、はっきりしない部分があるように思いましたので、書かせていただきます。 >Visual Basicの勉強をしたいのですが、 本当に勉強したいのは、Visual Basic For Application(Office の中のVB)ですか、それとも単体を勉強したいのでしょうか。 と言っても、単体なら、今は、VB.Net しかありませんが。(オークション等で、VB6を入手して使うのはお勧めしません。) >VBの教育バージョンをフリーで落とせるとの事を聞きましたが >エクセルに附属のものとこれも違うのでしょうか? #2さんもおっしゃっているように、まったく別ものです。VBAとは似ていて非なるものです。VBAの勉強にはならないというか、混乱します。最初から、オブジェクトの概念的な違いが出てきます。Excelに付属のものは、いわゆる旧Visual Basic(VB 6.0) です。(Office 2003 は、Visual Basic 6.5 と出てきます。これは、一部、.Net Framework が使えるようになっています。)VB6 の方言のようなもので、元とは似ている部分も多いと思います。 VBA(特にExcel)は、今のところは、テキストが豊富にあるので勉強しやすいかもしれません。 テキストは、Excel2000以降なら、ほぼ同じですから、古本屋さんで見つけてきても、基礎・関数レベルなら、問題なく使えます。(実務編になると、若干違ってきます。) VBの単体の勉強というなら、VB2008をダウンロードしてみればよいです。VBAもやったことがないと、かなりきついというか、さっぱり良く分からない部分が出てくるはずです。VB2005からは、旧VBユーザーが移行しやすく、オブジェクト指向そのものが出ないようにはなっているとは言っても、本質的には、別物という取り組み方のほうが無難です。 今の時点では、旧VB の仕様は、VBAをはじめ、VBScript やASP VBScript など、旧VBに似た方言を使うことも、まだまだ出てきます。(使わない人は使わないけれども、覚えておいて損はありません。いまだ、Batch プログラムを書く人がいますが、このような方法はあまり関心しません。)ですから、VBAは、一応、Excel等を通して勉強したほうが楽というか入りやすいとは思いますが。 なお、VB2005/2008からのOffice Applicationの操作は、#3さんのご指摘のようなオートメーション・オブジェクトの取得(COM = OLEの一種)による操作もあるのですが、VB2005/2008には、VSTO(Visual Studio Tools for Office)というOffice 専用のツールが備えられています。それによって、直接操作できるようになるわけですが、なんともお値段が高いということで、ちょっと使ってみるというには、コストパフォーマンスが合わないのです。 それと、私個人としては、もし、本格的に勉強するなら、フリーの"Express" 版よりも、製品版を購入したほうがよいと思います。私の記憶違いかもしれませんが、製品版を入れる時に、Express版のクリーン・アンインストールをしなければ、インストールできなかった記憶があります。Express 版は、いくつかの制限があります。また、製品のスタンダード版は比較的安価ですが、よほど慣れていなければ、Office を操作するようなことは考えないほうがよいです。VB.Net のテキストにはあまり載っていませんが、旧VBのVB6の操作とは同じようには出来ません。
補足
お世話になります。知りたかったのは、質問の通りVBAとVBの違いと、VBにはいくつものバージョンがありそれを知りたかったのです。 それで最終的には業務で雇ってほしい所まで高めたいのですが まず入門としてフリーを使いたいと考えています。
- imogasi
- ベストアンサー率27% (4737/17069)
今現在になって見ると、VB系統の言語に (1)VB4.0-VB5.0-VB6.0の系統と (2)VB.NET系統の(のVBで)2002,2003,2005,2008 http://homepage1.nifty.com/rucio/main/kiso/Version.htm 参照 === (3)一方オフィスソフトのアプリケーションに密着した エクセルVBA ワードVBA などがあり、これらは最新のものでVB6.0の仕様によって出来ています。 == (2)と(3)の仕様は、エクセルVBAで言えば(3)がエクセルの操作をコードで自動的に動かすのが主眼です。また細部に渉っては違いがあります。(2)は処理対象は偏っていません。しかしエクセルのシートのデータ処理などはエクセルの機能を借りることが必要です。標準では、使える道具立てが違うということです。オブジェクトライブラリというものを入手して使えるようにすると、両者は差が少なくなり似てきます。 ーー 共通点もありますが、(1)(2)は大きな断層があって、今から勉強するなら、(1)より難しいと思いますが、(2)を勉強することになるでしょう。 (ソフト会社などは依頼客先の採用状況で6.0が必要なことも ありえると思いますが。) http://www.atmarkit.co.jp/fdotnet/vb6tonet/index/index.html まず Visual Basic 2008 Express Edition について下記を参照。 http://www.microsoft.com/japan/msdn/vstudio/Express/ http://www.forest.impress.co.jp/article/2007/12/18/vs2008express.html VB/C#/C++言語も含まれる 良く知った人からは、上記の記述にも反論があるかもしれませんし、具体的にどういうことかは、少し勉強しないと判りません。
- n-jun
- ベストアンサー率33% (959/2873)
VisualBasicについての参考URL http://www.microsoft.com/japan/users/recipe/default.aspx >VBってエクセルの中で動くのではないのですか? Excel・Access等のものはVBA(VisualBasic For Application)です。 VBとは意外に違います。 ご参考まで。
お礼
VBAとVBの違いが分りました。ありがとうございました。
お礼
VBAとVBの違いが分りました。有難うございます。