Top > OOobbs3 > 21

OOobbs3/21 Edit

  • サマリ: 他のモジュールの関数の呼び出し
  • 環境: General
  • 状態: 解決
  • 投稿者: 七篠?
  • 投稿日: 2010-09-23 (Thu) 15:28:01

質問 Edit

汎用的な関数を「マイマクロ」に保存しておいて、ファイルごとのマクロから呼び出すことができません。 他のモジュールから別のモジュールの関数を利用することはできないのでしょうか?(関数の利用だけならボタンイベントの割り当てなどで可能なのですが、マクロのソース内から呼び出そうとすると「プロパティー値が正しくない」とのエラーを出されます)

回答 Edit

  • 利用しようとしている関数がなければ、「プロパティまたはメソッドが見つかりません」というエラーが出るはずです。

他のライブラリにある関数を利用したいときにはそのライブラリを事前に読み込んでおきます。次のような感じにします。

' マイマクロ中のライブラリ
GlobalScope.BasicLibraries.loadLibrary("Library_Name")
' ドキュメント中のライブラリ
BasicLibraries.loadLibrary("Local_Library_Name")

GlobalScope および BasicLibraries についてはヘルプを参照してみてください。

  • はにゃ? 2010-09-24 (金) 12:08:25
  • お返事ありがとうございます。 loadLibrary はプロシージャ内じゃないと呼び出せない(C言語の "include" のように書けない)から、初期化関数を作ってアプリケーションの起動時に呼ぶという方法でいいのでしょうか? -- 七篠 2010-09-25 (Sat) 15:24:47
  • 利用する前ならどこで読み込んでもいいと思います。利用するのが分かっているのであれば、そのマクロを実行するルーチンの最初の方で読み込む人が多いと思います。マクロの場合、ひとつか二つ程度のルーチンで完了するものであれば初期化は一緒にしてしまうかもしれませんし。 -- はにゃ? 2010-09-26 (日) 17:16:40
  • 分かりました。ありがとうございます! -- 七篠 2010-09-26 (Sun) 01:07:33

感想,コメント,メモ Edit



Reload   New Lower page making Edit Freeze Diff Upload Copy Rename   Front page List of pages Search Recent changes Backup   Help   RSS of recent changes