[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[openoffice:11008 ] Re:マクロでファイルをオープン



Sun Report Builder は日本語フォントの大きさを変えられないので
今のところ日本国内での使い道はあまり無いです。

Writer などのドキュメントを開くのであれば、ボタンを押したときのイベント
処理を用意しておいて、以下のようなマクロを使えば何とかなると思います。

' ボタンを押したときのイベント処理
sub OnPrintButton()
  OpenDoc("c:\〜\差込.odt")
end sub

' 外部ドキュメントを開く
sub OpenDoc(sFilename as string)
  if FileExists(sFilename) then
    OpenDoc =  StarDesktop.loadComponentFromURL(ConvertToURL(sFilename),
"_blank", 0, Array())
  else
    msgbox sFilename &chr(13)& "... が見当たりません。", MB_IconStop, _
      "残念でした!! : OpenDoc( )"
  end if
end function


蛇足かもしれませんがこういうこともできます。
' --------------------------------------
' フォームを開く
' --------------------------------------
sub DbOpenForm( sDocName as String, Optional sDbName as string)

	If IsMissing( sDbName ) then sDbName = thisDbName

	dim oDB as object
	dim oConnection as object
	
	oDB = DbGetByName(sDbName)
	oConnection = oDB.DataSource.getConnection("","")

	dim args(1) as new com.sun.star.beans.PropertyValue
	args(0).name = "OpenMode"
	args(0).value = "open"
	args(1).name = "ActiveConnection"
	args(1).value = oConnection
	
	if ( oDB.getFormDocuments.hasByName(sDocName)) then
		oDB.getFormDocuments.loadComponentFromURL(sDocName, _
		"_blank", 0, args())
	else
		msgbox sDocName &chr(13)& "... が見当たりません。", _
		MB_IconStop, "残念でした!! : DbOpenForm( )"
	end if

end sub

' --------------------------------------
' レポートを開く
' --------------------------------------
sub DbOpenReport( sDocName as String, Optional sDbName as string)

	If IsMissing( sDbName ) then sDbName = thisDbName

	dim oDB as object
	dim oConnection as object
	
	oDB = DbGetByName(sDbName)
	oConnection = oDB.DataSource.getConnection("","")

	dim args(1) as new com.sun.star.beans.PropertyValue
	args(0).name = "OpenMode"
	args(0).value = "open"
	args(1).name = "ActiveConnection"
	args(1).value = oConnection
	
	if ( oDB.getReportDocuments.hasByName(sDocName)) then
		oDB.getReportDocuments.loadComponentFromURL(sDocName, _
		"_ blank", 0, args())
	else
		msgbox sDocName &chr(13)& "... が見当たりません。",_
		 MB_IconStop, "残念でした!! : DbOpenReport( )"
	end if
		
end sub

' --------------------------------------
' 接続中のデータソース名を取得
' --------------------------------------
Function thisDbName as String
	thisDbName = mainForm.ActiveConnection.Parent.Name
end function

' ----------------------------------------------------------------------
' 	ドキュメントのトップレベルのフォームを取得
' ----------------------------------------------------------------------
Function mainForm
	mainForm = ThisComponent.DrawPage.Forms.getByIndex(0)
end function



demise-jscn@umin.ac.jp さんは書きました:
> >Toraさん
> どうもありがとうございます.
> SUN Report Builder でチャレンジしてみようと思います.
> 詳しい説明をありがとうございました.
> 
> 他にも様々なExtensionsが出ているんですね.
> 
> 先日PCの買い換えを期に,脱MSOfficeを敢行しています.
> ほとんど問題ないのですが,*.mdbファイルがなかなか厄介で・・・
> 
> また,質問させていただきます.
> よろしくお願いします.
> 
> 
> 
> 【MLコミュホームページ】http://www.freeml.com/openoffice
> 
> --[PR]------------------------------------------------------------------
> ◆◇◆  7つのおトクに大注目!入会特別キャンペーン実施中!  ◆◇◆
>  ┏━┓┏━┓┏━┓┏━┓┏━┓┏━┓┏━┓┏━┓┏━┓┏━┓┏━┓
>  ┃出┃┃光┃┃カ┃┃ー┃┃ド┃┃ま┃┃い┃┃ど┃┃プ┃┃ラ┃┃ス┃
>  ┗━┛┗━┛┗━┛┗━┛┗━┛┗━┛┗━┛┗━┛┗━┛┗━┛┗━┛
> http://ad.freeml.com/cgi-bin/sa.cgi?id=bU5cB
> ------------------------------------------------------------------[PR]--
> ■GMO INTERNET GROUP■ GMO INTERNET www.gmo.jp
> 
> 

【MLコミュホームページ】http://www.freeml.com/openoffice

--[PR]------------------------------------------------------------------
☆┃8┃6┃8┃本┃!┃王┃貞┃治┃の┃記┃録┃映┃像┃化┃!!┃
 ━┛━┛━┛━┛━┛━┛━┛━┛━┛━┛━┛━┛━┛━┛━┛━┛
  ☆☆★ 期 間 限 定 ! ネットでしか購入できませんっ! ★☆☆
━━ 王貞治が明かすホームラン哲学と野球人生を特別DVD収録! ━━
http://ad.freeml.com/cgi-bin/sa.cgi?id=bU7nT
------------------------------------------------------------------[PR]--
■GMO INTERNET GROUP■ GMO INTERNET www.gmo.jp