Top > OOobbs2 > 196

** [[OOobbs2/196]] [#m8ad94f0]
-''サマリ'': OLEオートメーション
-''環境'': Basic
-''状態'': 未解決
-''投稿者'': [[K.N.]]
-''投稿日'': 2009-12-14 (月) 21:28:20

※すいません!掲示板の使い方を理解していなかったので、はにゃ? 様、ike@九州 様 の回答を消してしまいました。。。どうにか復旧できないものでしょうか。。orz

*** 質問 [#z42c9a93]
OOoBASICからOLEオートメーションを使ってExcelやIEなどを操作できないのでしょうか。
いろいろ調べてみたのですが、それらしいものが見つからず困っています。
サンプルなどご存知でしたら教えてください。

※)下記サイトの「Microsoft Excelのシートオブジェクトを生成するサンプル」のような感じです。
http://ja.wikipedia.org/wiki/VBScript#OLE.E3.82.AF.E3.83.A9.E3.82.A4.E3.82.A2.E3.83.B3.E3.83.88.E6.A9.9F.E8.83.BD
 

はにゃ? 様、ike@九州 様 回答いただき、ありがとうございます。
 
あれからしつこくネットで調べてみたところ、下記のような記述を見つけました。
- http://wiki.services.openoffice.org/wiki/Documentation/DevGuide/ProUNO/Bridge/Using_Automation_Objects_from_UNO
- http://www.oooforum.org/forum/viewtopic.phtml?t=9815

これらを見る限り、OLEオートメーションを利用する際のお作法は↓のようになるのかと思います。
 Set automationFactory = createUnoService("com.sun.star.bridge.oleautomation.Factory")
 Set objApp = automationFactory.createInstance("Word.Application")
 
ところでVBAなどではクラスモジュールやフォームから、WithEventsキーワードを使うことにより、操作対象アプリケーション
のイベントを拾う事ができるのですが、OOoBasicでは同じようなことができないのでしょうか・・・?
 
K.N.

*** 回答 [#m4b97256]

- CreateObject ランタイム関数で該当するオブジェクトを取得します。

 Sub ietest
  ie = CreateObject("InternetExplorer.Application")
  
  ie.Visible = True
 End Sub
Excel が入っていないので IE で試してみました。これ以降はよくワカリマセン。

また、CreateObject は win でもなぜか動作しない環境が時々あることが知られています。

-- はにゃ? &new{2009-12-14 (月) 23:30:19};
- http://oooug.jp/faq/index.php?faq%2F5%2F197 にて追加しました m(_ _)m -- ike@九州 &new{2009-12-17 (木) 11:55:55};

#comment
*** 感想,コメント,メモ [#sad74053]
- はにゃ? さま ご回答ありがとうございます。 希望が出てきました。 (^_^) -- mimeu &new{2010-09-28 (火) 10:08:56};

#comment

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