• ベストアンサー

オブジェクトとインスタンスはそれぞれあってますか?

オブジェクトとインスタンスはそれぞれあってますか? vbaで Sub test() Dim CN As ADODB.Connection 【1】 Set CN = New ADODB.Connection  【2】 ・・・ それぞれ 【1】オブジェクトの作成 【2】インスタンスの作成 であってますか?逆ですか? 動作の名称を教えてください。

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

  • ベストアンサー
  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.2

VBAではVB6がベースで止まっており、インスタンスという考えは前面に出てきません。 NEWとCreateObjectと並存していたりする。 VB.NETになると、質問のセットで、内部メモリにcnというオブジェクトの名前でそのObjectが働ける状態にした、ということになる。 VBAではその土台にあるクラスという考えを前面に出してないので、神経質にならなくても、VBAでは良いのでは。 http://codezine.jp/article/detail/499 のような解説は有るが、それ以外の部分で普通は済んでしまう。 それよりアプリ(VBAのA)固有のメソッドやプロパティなどが沢山勉強しなければならないことが多く、VBAから入る人が多く、VB(.NET)を学ぶときに正確に区別を学習しては(質問者は逆かな?)。 VBを学習しても、エクセルVBAなら、エクセルの基本を勉強しないとまともに考えられないのに、エクセルの機能の学習前に、したいことだけ考えて色々質問している例を見かける。

mamama31
質問者

お礼

ありがとうございました。

その他の回答 (1)

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.1

>Dim CN As ADODB.Connection  変数の宣言です。 >Set CN = New ADODB.Connection  これは、インスタンスを生成しています。 ここでは、オブジェクトの生成・インスタンスの生成は、同じ意味だと思います。 本来、クラスを実体化させることが、インスタンスの生成と言います。オブジェクトの生成というのは、もう少し広い意味があるはずですが、今のところ、VBAの範囲で適当な例が浮かびません。

mamama31
質問者

お礼

dimは変数の宣言ですね。 勉強になりました。ありがとうございました。

関連するQ&A

専門家に質問してみよう