Top > OOobbs3 > 76

OOobbs3/76 Edit

  • サマリ: マクロで他ドキュメントに追加したshapeがすべて保存されない
  • 環境: Calc
  • 状態: 未解決
  • 投稿者: ポンコツ寺っち?
  • 投稿日: 2011-12-07 (水) 19:54:16

質問 Edit

他の表計算ドキュメントに、マクロでshapeを追加したいのですが、 一部しか保存されません。フォント、カラー、サイズ等は保存され ません。よろしくお願いいたします。

バージョン:OpenOffice.org2.4.1

Sub AAA
 Dim doc As Object
 Dim FileProperties(0) As New com.sun.star.beans.PropertyValue

 doc = StarDesktop.loadComponentFromUrl(ConvertToUrl("c:\aaa.sxc"), "_blank", 0 , dimArray())

 textshape(doc)

 FileProperties(0).Name = "Overwrite"
 FileProperties(0).Value = Ture

 doc.storeAsUrl(ConvertToUrl("c:\aaa.sxc"), FileProperties())

 doc.Close(True)
End Sub

sub textshape(ByRef oDoc As Object)
 Dim oSheet As Object
 Dim oDrawPage As Object
 Dim oShape As Object
 Dim oText As Object
 Dim aPos As New com.sun.star.awt.Point
 Dim aSize As New com.sun.star.awt.Size

 oSheet = oDoc.Sheets.GetByIndex(0)

 oDrawPage = oSheet.DrawPage
 oShape = oDoc.createInstance("com.sun.star.drawing.TextShape")
 oText = oShape.getText()

 aPos.x = 200
 aPos.y = 200

 aSize.Width = 1
 aSize.Height = 1

 oShape.Position = aPos
 oShape.Size = aSize

 oDrawpage.Add(oShape)

 oText.String = "11.11"

 oText.CharFontName = "HG PゴシックB Sun"
 oText.CharHeight = 6.0 
 oText.CharColor = RGB(255, 0, 255)
 oShape.TextVerticalAdjust = com.sun.star.drawing.TextVerticalAdjust.TOP
 oShape.TextHorizontalAdjust = com.sun.star.drawing.TextHorizontalAdjust.LEFT

 oShape.TextAutoGrowWidth = True
 oShape.TextAutoGrowHeight = True
End Sub

回答 Edit

  • Draw では動作しますが、Calc では保存されませんねぇ。サムネイルには図形が表示されますが、contents.xml には図形が保存されていません。Calc のコメントを API から挿入して保存するとおかしくなることもあるので、Calc の図形描写関係はバグがあるようです。 -- はにゃ? 2011-12-08 (木) 04:23:22

感想,コメント,メモ Edit

  • 早速の回答ありがとうございます。自分自身の表計算ドキュメントでは保存されているようにみえますが、おかしくなることもありえるということでしょうか? -- ポンコツ寺っち 2011-12-08 (木) 10:40:31
  • 2.4.2 では保存されましたが、OOo 3.3.0 では図形が保存されませんでした。3.0.1 でも保存されなかったので、3 系からの問題のようです。 -- はにゃ? 2011-12-09 (金) 00:23:40
  • ありがとうございました。マクロを表計算ドキュメント読み込ませて対応するようにしてみます。 -- ポンコツ寺っち 2011-12-09 (金) 11:34:51


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