• ベストアンサー

VB6, VB2005,VC# どれを学習したらよいでしょうか。

VB6, VB2005,VC# どれを学習したらよいでしょうか。 やりたいことはデータベースやテキストファイル処理、インターネットコネクションのプログラミングです。 仕事でExcelVBAを時々使うので、以前から持っているVB6かと思ったのですが、なぜかMSDNがなくリファレンスがなく微妙です。本かウェブしか頼れない・・・。 ある程度の処理速度を求めていますのでExcelVBAではない方がいいのですが、これからのことを考えたらVB6よりもVB2005でしょうか? それともどうせVB2005はexcelとは大幅に文法が変わってしまうのだからC#? いろいろ調べるほどわからなくなってしまいました。 なおエクセルVBAも本に一通り書いてあることも満足にできない程度です・・・。(こちらにも役立てられるとさらにうれしいです)

質問者が選んだベストアンサー

  • ベストアンサー
  • process9
  • ベストアンサー率29% (81/271)
回答No.4

process9です。 >仕事上でVBAのマクロを書く機会がたまに(1週あたり50行ぐらい?)あるので、仕事面との相乗効果という観点からVB6との比較ではC#はどうでしょうか。 やりたいことが仕事に関係があるかどうかだと思います。 関係がある場合、仕事上での使用でVBAを使うとのことでしたので、VB6を私は押します。学習スピード、使用マシンのスペック、周りの方の環境などで当面作れればよいと思われますし、使える人が多数いるのでこういうQAでもレスポンスなどが早いし、正確。リファレンス自体はWEBで十分だと思われます。周りと自身の仕事環境が変化(バージョンUPなど)したときにVC#などに乗り換えた方が効率がよいかと思います。 仕事に関係ない(趣味で作成する)ということであれば、将来性、言語としての完成度からVC#をお勧めします。ただ、.NET系はまだ発展途上なので、動作の安定性、配布性に問題があります。でも、クライアントプログラムの世界では、将来的に(3~5年後くらい?)には標準の開発言語になりうると思われます。

その他の回答 (4)

  • dekopa-
  • ベストアンサー率42% (161/378)
回答No.5

>VB6でたとえばインターネットブラウザを簡単に作れてしまうのもライブラリ(API?)を使っているからでしょうか? そうです。 この場合は正確には、「インターネットエクスプローラーの内部で使われているコンポーネント(ライブラリの事です)が、他でもつかえるように公開されている」のですが。 ライブラリには、開発環境に付属する物、アプリケーションに付属する物、インターネットでフリーで公開されている物、等色々あります。 例えば、VBでつかえる「ボタン」も立派なライブラリ(コモンコントロールといいます)です。あれが無かったら、四角を書いて、色を塗って、文字を書いて……と全部自前でプログラミングしなければならなくなります。

回答No.3

ほか何人かの皆さんと同じくC#をお勧めします。言語体系がすっきりしていて、とても良い言語だと思います。さすがはMicrosoftが他言語の「いいとこ取り」をして作った言語というところでしょうか。 私はVB6はあまり知らないので、O'LEIRRY JAPANの『プログラミング C#』前書きの受け売りになりますが、 「VB6からVB.NETへの移行はC#.NETへの移行と同程度に難しいことは間違いない」そうです。 個人的にはOfficeのマクロもそろそろ.NET対応になることを期待しています。

DreamInc
質問者

補足

ありがとうございます。 C#に傾きつつありますが、他の方の意見もまだ募集させてください。 特にVB.netは選択肢からやはり消えていきそうです。 watanabeさん、あるいは他の方の意見もお聞きしたいのですが、 仕事上でVBAのマクロを書く機会がたまに(1週あたり50行ぐらい?)あるので、仕事面との相乗効果という観点からVB6との比較ではC#はどうでしょうか。

  • MrBan
  • ベストアンサー率53% (331/615)
回答No.2

他言語などももろもろ考えると、その選択肢なら C# を推奨します。VB.NET でも好みの問題でしょうか。 少なくとも、VB6は Microsoft のサポート切れなので今更お勧めはしません。

DreamInc
質問者

お礼

ありがとうございます。 C#に傾きつつありますが、もう少し他の方の意見も募集させてください。

  • dekopa-
  • ベストアンサー率42% (161/378)
回答No.1

将来性、というならVB.NETかC#.NET。 好みで言うならC#.NET。 ExcelVBAの延長ならVB6。 やりたい事はどれでも出来ます。ただ、ライブラリの充実度が段違いなのでVB6は捨てて.NET系のどちらかを勧めます。こっちは文法以外、出来る事に差はありません。 「これから」というなら、すっぱり古いVBを忘れてC#で良いんじゃないでしょうか?

DreamInc
質問者

補足

ありがとうございます。 ライブラリがよくわかっていないのですが、 VB6でたとえばインターネットブラウザを簡単に作れてしまうのもライブラリ(API?)を使っているからでしょうか? どのようなライブラリがあるのかすらわからないので・・・。

関連するQ&A