Top > OOobbs > 61

OOobbs/61 Edit

  • サマリ: ファイルオープン時に動作させたいマクロ
  • 環境: Calc
  • 状態: 解決
  • 投稿者: Kuma?
  • 投稿日: 2005-04-24 (日) 08:49:15

質問 Edit

VineLinuxでOOo1.1.2を使用しています。 calcワークブック(.sxc)を開いたときに自マクロを自動実行したいのですがその様な方法が有りましたらご教示をお願い致します。 目的はシートをオープンした時に共通のオブジェクトを自動実行で作成し、各々のプロシージャで定義しなくても済むようにする事です。 例えばシート上に設けたリストボックスを色々なSubで操作する場合の例を下記に示します。

REM ****BASIC****
Global oListBoxView As Object
Global ix As Integer
Sub Auto_Open'<---Excelの場合の自動実行Sub名です。
oCtrl=ThisComponent.getCurrentController
oSheet=ThisComponent.getSheets.getByName("表1")
oDrawPage=oSheet.DrawPage
oForm=oDrawPage.Forms("standard")
oListBox=oForm.getByName("ListBox")'シート上のリストボックス
oListBoxView=oCtrl.getControl(oListBox)
ix=0
End Sub
Sub List_Change
ix=ix+1
oListBoxView.addItem("abcd",ix)
End Sub
Sub List_Select
 MsgBox oListBoxView.selectedItem 
End Sub

なお、この様な場合Excelでは

Sub Auto_Open
 '必要なコード
End Sub

と言うのが有ります。

回答 Edit

  • ファイルを開いたときにマクロを自動的に実行させるためには OOo ではメニュー ツール -> 設定 -> イベントタブ で設定を行います。「ドキュメントを開いたとき」に実行したいマクロを割り当てます。マクロの自動実行はセキュリティーに関する問題点のため,ユーザーが実行を許可しなければ実行されません。 -- はにゃ?? 2005-04-24 (日) 10:53:45
  • はにゃさん、早速行なってみましたら出来ました。ご教示大変有難う御座いました。 -- Kuma? 2005-04-24 (日) 12:15:07


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