Diagramm über Makro aktualisieren

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Diagramm über Makro aktualisieren

von MikroC » Di, 30.08.2005 12:13

Habe 'ne Lösung gefunden:

sub chart002

'letzte datenfreie Zeile bestimmen (auch aus diesem Forum)------
Doc = StarDesktop.CurrentComponent
oSheet = Doc.Sheets(0)
oCellCursor = oSheet.createCursor()
oCellCursor.GotoEndOfUsedArea(True)
letzte_Zeile = oCellCursor.getRangeAddress.EndRow

rem Code über "Makro aufnehmen" erzeugt
rem ----------------------------------------------------------------------
rem define variables
dim document as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")

rem ----------------------------------------------------------------------
rem dispatcher.executeDispatch(document, ".uno:StarChartDataDialog", "", 0, Array())

rem ----------------------------------------------------------------------
dim args2(3) as new com.sun.star.beans.PropertyValue
args2(0).Name = "Name"
args2(0).Value = "Object 4"
args2(1).Name = "Range"
args2(1).Value = "$Tabelle1.$A$1:$A$" & letzte_Zeile+1 'Datenbereich wird erweitert
args2(2).Name = "ColHeaders"
args2(2).Value = false
args2(3).Name = "RowHeaders"
args2(3).Value = false

dispatcher.executeDispatch(document, ".uno:ChangeChartData", "", 0, args2())

end sub

-----------------


Dieses Makro dem Ereignis "Dokument sichern" zuordnen (oder wie man will). Schade das es kein Ereignis "update Zelle" gibt oder ich es bisher nicht gefunden habe.


----------------
MikroC

von MikroC » Di, 30.08.2005 11:07

Danke Emmess, aber leider geht's nicht.

Tabelle undd Diagramm liegen auf einem Blatt.
Das Problem, was ich habe ist, dass beim Erstellen des Diagramms ein Datenbereich festgelegt wird (der mag ausreichend groß sein), steht aber in einer Zelle nichts drin, wird der Datenbereich automatisch bis zur letzten Zelle mit Daten gekürzt. Erfolgt jetzt ein Eintrag in der letzten freien Zelle, werden die Daten nicht in das Diagramm übernommen. Ich muss also per Hand den Datenbereich wieder vergrößern. Das möchte ich gern vermeiden und suche nach einer Möglichkeit, den Datenbereich dynamisch an den Zellinhalt anzupassen.

bei mir

von Emmess » Di, 30.08.2005 01:14

funzt es so, daß ich beim Ergänzen einer Tabelle die Grafik sofort geändert sehe.

Womöglich hat das damit zu tun, daß die Tabellendaten auf einem anderen Blatt stehen, nicht auf demselben, und beim "Umblättern" die Grafik sich aktualisiert? Probiers mal aus.

Diagramm über Makro aktualisieren

von MikroC » Mo, 29.08.2005 11:12

Ich möchte neue Werte einer Tabelle automatisch über ein Makro in ein Diagramm übernehmen. Bisher habe ich leider nichts darüber gefunden und das Programmiergenie bin ich leider auch noch nicht.
Ich bin euch für jede Hilfe dankbar.

Nach oben