- ベストアンサー
VisualBasic を学ぼうと検討しております
VisualBasic を学ぼうと検討しております。 VBをある程度書けるようになると、Excelのマクロ作成にも役立つと認識してますが、正しいでしょうか。(共通的な部分があると思っています) 初歩な質問ですが、よろしくお願いします。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
>VBをある程度書けるようになると、Excelのマクロ作成にも役立つと認識してますが 見当違いです。 エクセルVBAが判ったからといって、VB.Netが直ぐ使えるわけではない。VB6がVBAのベースですが、VB6と.NETのその落差は新しい言語を勉強する以上だ。 VB.NETが市販解説書レベルで使えても、エクセルVBAのコードが直ぐかけない。 文法にやや共通するところがあるが、そんな知識は役立つと言えるレベルではない。難しい点は別に膨大にある。 エクセルVBAのオブジェクト、プロパティ、メソッドなど覚えない(覚えなくても調べられれば良いのだが)と、エクセルのVBAでエクセルの処理は動かせない。 エクセルVBAはエクセルVBAの学習をすべきだ。両方同時にやろうと言うのは、欲が深すぎる。独学では、どちらもそんなに、たやすいものではない。多数の人の中には、簡単でしたよ、と言う人も居そうだが、世の中には、こういうプログラム学習に才能のある人も要るようだが、質問者がそうだと言うデータはない。 またVB.NETでエクセルを動かす方法は設けられてあるが、VB.NETの一分野と考えた方が良いでしょう。 ただしエクセルVBAの知識は要るでしょう。 ーー COM Interop エクセル VB.NET でGoogleででも照会して出てくるコード 普通の人には情報源が市販の書物やWEBしかないが、市販の書物など入門者用ばかりで、その解説には、本当に大切な点(考え方や設計思想、使い方など、実は解説が難しいことが多い)は避けてある。
その他の回答 (4)
- layy
- ベストアンサー率23% (292/1222)
TIPS一例 http://www.geocities.co.jp/siliconvalley/4805/index.html VBとVBAでみるとわかるように、 テクニック的なもの、必要になるだろうこと、は違ってくるのです。 似ている点(=共通の知識を使う)より 違う点(=覚えないといけない)のがはるかに多い。 どちらか、挫折しないでできる方から がんばりましょう。
お礼
似ている点(=共通の知識を使う)より 違う点(=覚えないといけない)のがはるかに多い。 全く別の言語、と認識すべきですね。 やりたいこと の優先順位を考えて、もう一度検討しなおしてみます。 的確なアドバイスありがとうございます!!
- layy
- ベストアンサー率23% (292/1222)
>Visualではないですよね そんなことはない。 「VisualBasic」が出る前からを思えばすごく「Visual」になってます。 >VBをある程度書けるようになる これがどのくらいのことを意味しているか、ですね。 仕様を発案するところから始まりますから、コード書くのが最初の作業ではないのです。 何も見なくても、発案しコーディングできるレベルまで到達できるか。 これは1日2日でできるものでもない。 『プログラミング』がどんなものか。 ここの掲示板、VisualBasicやオフィスのカテゴリを見たら わかるようにたくさんの初心者?がVBA操作で悩みを抱えて質問しています。 専門学校を出て基本を学んだ人と独学の人との差は歴然です。 『"0123334"の7ケタを"-"挿入して"012-3334"にしたい。』 双方ともMID関数使ったりしますし、確かに似た命令語はあります。 でも、実際は共通といわれる部分ができてーより もっと違う次元のそれぞれにある機能レベルが必要です。 エクセルでいうとシート間操作したり、VBでいうとデータベースと連携させたり。 VBもマクロ(VBA)作成もプログラムの1つですから、 基本的なところ、作成に至る過程は大事です。アルゴリズムは必須。 「最近並べ替えしたい」との質問多いですが、 SORTコマンドを知っていても並べ替えのアルゴリズムを知らない人多いです。 並べ替え自身もプログラムでできる話です。 「並べ替え」「順位付け」「重複チェック」「マッチング」等、 大変なものです。 人に聞いてコードをコピー&貼り付けして動いた、 これは「書けた」「出来た」というレベルでない、 「カンニング」レベルなので、勘違いしないことです。 『プログラミング』になっていないのです。 エクセルVBAでもVBでも、勉強しないとできない。 EXCEL http://www.asahi-net.or.jp/~ZN3Y-NGI/YNxv20002.html http://www.asahi-net.or.jp/~ef2o-inue/top01.html http://www.voicechatjapan.com/excelvba/VBArei4.htm 参考で、ほんの一例です。 VBにしてもエクセルVBAにしても 「VBAエキスパート」とか試験がありますからそれも頑張ってみる。 学んではダメ、ではない。 違いが分かった上でどちらかにするか、両方ともやるか、です。 中途半端な知識では、間違ったシステムを招く恐れありますので困りますね。
お礼
ご回答ありがとうございます。 >VBにしてもエクセルVBAにしても >「VBAエキスパート」とか試験がありますからそれも頑張ってみる。 試験もあるのですね!! 調べてみます!! 当方は、一応、Cとverilogを仕事で使っています。 趣味程度にWebページをVBで操作できるかな、VBやれば仕事で使うExcelマクロにも応用できるかな。 という、安直な考えでした。 アドバイスありがとうございました!!
- 誠治(SEIZI・SAGE)(@romanda201)
- ベストアンサー率10% (293/2677)
>提案します 私もVBの本を読んだけどね どこがVISUAL(可視)やねん! と思いました 貴方はソフトをそう言う方向に 高めてくれませんか? 余計な事ですいませんけどね・・
お礼
ご回答、ありがとうございます。 プログラミングって意味だとVisualではないですよねw VisualC++とかも同意ですね そういう意味だと、HDL系でホントにvisualプログラミングを開発してました。 ブロックをつなぎ合わせて、ここはループとか演算とか きっと未来ではそういうプログラミングも出来るようになるんでしょうね。
- marutone
- ベストアンサー率40% (70/174)
Excelのマクロを作りたいのなら、 Excel VBAを学ぶのが一番の近道です。 Visual BasicといってもVB.NETではなくVB6はVBAに近い言語ですね。
お礼
ご回答、ありがとうございます。 作りたいのはVisual Basicの実行ファイルなのですが、他にもVBAにも役立つのかなぁ と思い、質問させていただきました。 VB.net と VB6 は別物なのですね(汗 その違いから調べてみます。 ありがとうございました。
お礼
ご回答ありがとうございます。 >VBをある程度書けるようになると、Excelのマクロ作成にも役立つと認識してますが >>見当違いです。 全く別の言語として考えて間違いないレベルなんですね。 失礼しました。 >VB6と.NET VBにも2つある、との認識で正しいのでしょうか。 違いを調べてみます、 ありがとうございました!