[gelöst] Diagramm per Makro erzeugen
Verfasst: Sa 20. Jan 2018, 20:24
Hallo zusammen,
das Thema Diagramm per Makro ist weitgehndst erschöpft,
dennoch tauchen immer wieder Fragen auf.
Im nachstehenden Makro (zu finden hier im Forum und in
diversen Veröffentlichungen) wird der Wertebereich der
X-Achse immer von der Spalte "0" also "A" beschrieben.
In meinem Fall liegen die Werte für die X-Achse aber in der Spalte "D"
Und die werden mit dem Makro natürlich nicht übertragen.
Meine Frage: was muß ich am Makro ändern, damit ich den Wertebereich
der Spalte "D" auf der X-Achse abbilden kann?
Mit Gruß
Werner
das Thema Diagramm per Makro ist weitgehndst erschöpft,
dennoch tauchen immer wieder Fragen auf.
Im nachstehenden Makro (zu finden hier im Forum und in
diversen Veröffentlichungen) wird der Wertebereich der
X-Achse immer von der Spalte "0" also "A" beschrieben.
Code: Alles auswählen
Sub BildeDiagramm (Zeile)
Dim Doc As Object
Dim Charts As Object
Dim Chart as Object
Dim Rect As New com.sun.star.awt.Rectangle
Dim RangeAddress(0) As New com.sun.star.table.CellRangeAddress
Rect.X = 8000
Rect.Y = 1000
Rect.Width = 10000*1.5
Rect.Height = 7000*1.5
RangeAddress(0).Sheet = 0
RangeAddress(0).StartColumn = 0
RangeAddress(0).StartRow = 2
RangeAddress(0).EndColumn = 2
RangeAddress(0).EndRow = Zeile
Doc = ThisComponent
Charts = Doc.Sheets(0).Charts
Charts.addNewByName("MyChart", Rect, RangeAddress(), True, True)
Chart = Charts.getByName("MyChart").EmbeddedObject
Chart.HasMainTitle = True
Chart.Title.String = "Wasserraketensimulation"
Chart.HasSubTitle = True
Chart.Subtitle.String = "Geschwindigkeit und Steighöhe über Zeit"
Chart.Diagram.HasXAxisTitle = true
Chart.Diagram.XAxisTitle.String = "Zeitachse"
Chart.HasLegend = True
Chart.Legend.Alignment = com.sun.star.chart.ChartLegendPosition.BOTTOM
Chart.Legend.FillStyle = com.sun.star.drawing.FillStyle.SOLID
Chart.Legend.FillColor = RGB(210, 210, 210)
Chart.Legend.CharHeight = 7
Chart = Charts.getByName("MyChart").embeddedObject
Chart.Diagram = Chart.createInstance("com.sun.star.chart.LineDiagram")
End sub
Meine Frage: was muß ich am Makro ändern, damit ich den Wertebereich
der Spalte "D" auf der X-Achse abbilden kann?
Mit Gruß
Werner