マンガでよめる痔のこと・薬のこと

【VB.NET】事後バインディングにおける引数の宣言方法

 今晩は,いつも勉強させていただいております.
質問させていただきます.どうぞよろしくお願いいたします.

 開発環境:VB2008+XP になります。

 Excel操作コードの部分を事後バインディングにすべく
勉強いたしております。
 たとえば
  「事前バインディング」
    Dim myApp As New Excel.Application
    Dim myBook As Excel.Workbook
    Dim myBooks As Excel.Workbooks = myApp.Workbooks
    Dim xlSheet As Excel.Worksheet
    Dim xlSheets As Excel.Sheets
      ↓
  「事後バインディング」
    Dim myApp As Object
    Dim myBook As Object
    Dim myBooks As Object
    Dim xlSheet As Object
    Dim xlSheets As Object
    myApp = CreateObject("Excel.Application")
    myBook = myApp.WorkBook
    myBooks = myApp.WorkBooks
    xlSheet = myApp.Worksheet
    xlSheets = myApp.Sheets

のようにするのだと思うのでございますが、

 Sub Excel2(ByRef myRng As Excel.Range, ・・・・)
                 ↑ここはどうやって宣言すべき
                   なのでございましょうか???
 「Sub Excel2」内ではmyAppが宣言されておりませんゆえ
myApp.Rangeなどといたしますと「宣言されていません」とエラーが
出てしまうと思うのでございますが。。。。
    
 もしお詳しい方がいらっしゃいましたら、是非ともアドバイスいただきたく
お願い申し上げます。

このQ&Aに関連する最新のQ&A

A 回答 (2件)

>この部分はきちんとExcel.~で型を指定しないと解放しづらくなる



確かにそうなのかもしれませんが・・・
それならば、
Dim myBook As Object
なども同じことが言えるのではないか、という気がします。

参考になりそうなページを見つけましてので、参考にされてはいかがでしょうか。
http://hpcgi1.nifty.com/MADIA/VBBBS2/wwwlng.cgi? …
    • good
    • 0
この回答へのお礼

 どうもありがとうございます!
リンク先読ませていただきました。
かなり良い情報ですね^^
読んだ後「事後バインディング エクセル 解放」
などと検索いたしますと、いろいろ注意事項があるようでございました。

 この度はご閲覧・アドバイスいただきまして
どうもありがとうございました!!m(_ _)m

お礼日時:2010/01/17 09:05

As Object で良いのではないでしょうか。

    • good
    • 0
この回答へのお礼

 どうもありがとうございます!
以前、Excelの解放に試行錯誤している際に、
この部分はきちんとExcel.~で型を指定しないと
解放しづらくなる、と教えていただいたことが
ございましたので、悩んでおりました。。。
 とりあえずアドバイスいただいた通りにすべて
コーディングを進めてみます。
(解放しづらくなったりしないものでございましょうか。。。?)


この度はご閲覧・アドバイスいただきましてどうもありがとうございました!!

お礼日時:2010/01/13 23:36

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング