チャート 
Writer に挿入するチャートは埋め込み型オブジェクトです。
Calc にチャートを挿入するときと違い、データをチャートのデータを設定したり、凡例を設定する必要があります。
次のコードは以下のような手順で行っています。
- チャートを埋め込み型オブジェクトとして挿入
- 積み上げパーセント表示のチャートに変更
- データを設定
- データ系列ラベルの設定
- チャートタイトルの設定
Sub chart_1
oDoc = ThisComponent
oText = oDoc.getText()
oEmbeded = oDoc.createInstance("com.sun.star.text.TextEmbeddedObject")
oEmbeded.CLSID = "12DCAE26-281F-416F-a234-c3086127382e"
aSize = CreateUnoStruct("com.sun.star.awt.Size")
aSize.Width = 8000
aSize.Height = 7000
oEmbeded.setSize(aSize)
oCursor = oText.createTextCursor()
oEnd = oText.getEnd()
oText.insertTextContent(oEnd,oEmbeded,False)
oChart = oEmbeded.Model
oDiagram = oChart.createInstance("com.sun.star.chart.StackableDiagram")
oChart.setDiagram(oDiagram)
oDiagram = oChart.getDiagram()
With oDiagram
.Stacked = True
.Percent = True
.Vertical = True
End With
oData = oChart.getData()
Dim nData(1,3) As Double
nData(0,0) = 40.0
nData(0,1) = 25.0
nData(0,2) = 18.0
nData(0,3) = 17.0
nData(1,0) = 35.0
nData(1,1) = 35.0
nData(1,2) = 15.0
nData(1,3) = 15.0
oData.setData(nData)
oData.setRowDescriptions( _
Array("Data 1", "Data 2"))
oData.setColumnDescriptions( _
Array("A", "B", "C", "D"))
oChart.HasMainTitle = True
oTitle = oChart.Title
oTitle.String = "Chart Title"
End Sub