人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

【Excel VBA】
標準モジュール内に作成したユーザ定義型を
同モジュールのプロシージャや関数の引数として渡すとエラーとなってしまいます。
エラーの内容
「コンパイルエラー<改行>パブリックオブジェクトモジュールで定義されたユーザー定義型に限り、変数に割り当てることができ、実行時バインディングの関数に渡すことが出来ます。」

クラスモジュールを作成し、
Web上で見かけた書き方を真似して同様のものを作ったところ正常に動きましたが、
?標準モジュール内に作成したユーザ定義型を同モジュールのプロシージャや関数の引数として渡すことは不可能なのでしょうか?
?クラスモジュール内で何かしらを作成しなければならないのでしょうか?
?クラスモジュール内でユーザー定義型などを作成するに当たって参考になるサイトを教えてください。(一応は動いていますが、クラスモジュールの書き方など正しいとは思えませんので)

上記の質問のうちどれか一つ以上お答えください。

よろしくお願いします。

●質問者: にぎたま
●カテゴリ:コンピュータ
✍キーワード:Excel VBA Web エラー オブジェクト
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● KirakiraHikaru
●500ポイント ベストアンサー

標準モジュール内に作成したユーザ定義を

同モジュールの関数の引数に利用することは可能です。

下記の構造体の利用は参考になりませんでしょうか?

http://www.bekkoame.ne.jp/~poetlabo/COMP/Excel/VBALEC/arg.htm


ただし、VBAの制約でByRef型でないと渡すことができないようです。

(VBだと可能なのですが・・・)

◎質問者からの返答

KirakiraHikaruさん

いつもありがとうございます。

また助けていただきました。

受け取り側で

xxxx(yyy As 定義型)

の「定義型」と書き忘れていただけのようです。

チェックが甘かったです・・・

精進が足りないようです。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ