- ベストアンサー
CreateObjectでセットしたオブジェクトの戻り値は取得できるか
- CreateObject("Scripting.Dictionary")でセットしたオブジェクトは関数の戻り値として取得できますか?現在のエラー状況はMicrosoft VBScript 実行時エラー (0x800A01C2)で、引数の数が一致していないか不正なプロパティを指定している可能性があります。
- セットしたオブジェクトを引数渡しはできるのに戻り値として取得できない理由は、知識不足ですが不思議です。
- 質問としては、CreateObjectでセットしたオブジェクトを関数の戻り値として取得する方法についての解決策を教えていただきたいです。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
? RecordSetでも取れるはずですが? ソースがそれではよく判らないので断言は出来ませんが。 ただ、なんだったかなー。 一回別のモノに落とさないと関数の中・外の出入りが 出来なかったのがあったような。。。 はっきりエラーが出たソースを書いてもらえれば判るんですが。 ちなみに、sousi-niさんが質問に書いている関数↓ですが ------------------ Private Function CreateRec() Dim RecSet Set RecSet = CreateObject("Scripting.Dictionary") RecSet.Add "1","山田" CreateRec = RecSet Exit Function End Function ------------------ こう書き直せます↓。この方がシャープ。 何やってるのか判りやすいし。 ------------------ Private Function CreateRec() Set CreateRec = CreateObject("Scripting.Dictionary") CreateRec.Add "1","山田" End Function ------------------
その他の回答 (1)
- o84
- ベストアンサー率31% (128/407)
例) --------------------------------------------- Dim RetObj Dim RecValue RetObj = CreateRec() ↑ここのところを Set RetObj = CreateRec() とすれば取れます。
補足
ご教授ありがとうございます。 Set G_RecMap = Server.CreateObject("ADODB.Recordset") 'レコードオープン G_RecMap.Open SQLPrm, G_Conn, 3, 3, 1 上記のようにレコードセットしたオブジェクトは返せますでしょうか?同じ要領で行うと上手く行かないのですが。。。お手数ですが、よろしくお願いします
お礼
ご教授ありがとうございます。別投稿でもご協力していただき大変感謝しております。私自身も調べておりますので、どうかよろしくお願いいたします。