Hallo,
ich suche eine Möglichkeit eine Reihe von Diagrammen entweder direkt in Calc als Slideshow zu starten oder eben einen Import der Daten in Diagramme nach Impress. Bin leider mit meiner Suche nicht weitergekommen. Soweit ich es verstanden habe, sollte es per OLE oder DDE gehen.
Zum Verständnis: wir haben in der Firma einen Monitor an der Wand, welcher per Präsentation immer dir aktuellen Umsätze zeigen soll. Die Tabellen sind soweit klar, die Diagramme funktionieren auch wie sie sollen.
Nur leider habe ich keine Möglichkeit gefunden die Diagramme einzeln als Vollbild darzustellen. Eventuell als Makro?
Viele Grüße,
Matthias
Calc-Diagramm nach Impress per DDE
Moderator: Moderatoren
Re: Calc-Diagramm nach Impress per DDE
Ansicht-Ganzer Bildschirm (im Menü)?Nur leider habe ich keine Möglichkeit gefunden die Diagramme einzeln als Vollbild darzustellen.
schalte Ganzer Bildschirm ein und schalte das ganze 'Geraffel' (Gitternetzlinien, Scrollleisten, Tabellenreiter, ....) ab und schalte die Blätter per Makro nacheinander aktiv:Eventuell als Makro?
Code: Alles auswählen
With Thiscomponent
For i = 0 To .Sheets().Count - 1
.CurrentController.SetActiveSheet(.Sheets().getByIndex(i))
Wait 5000 'entspricht 5 Sekunden
Next i
End With
Mit Impress und DDE würde ich das konkrete Problem hingegen nicht lösen, weil es sehr wahrscheinlich Probleme bei de Skalierung drr Diagrame gibt, falls diese nicht alle gleich sind, denn Du kannst per DDE nur ganze Dateien und keine Einzeldiagramme verknüpfen.
Gruß
Stephan
Re: Calc-Diagramm nach Impress per DDE
Hi Stephan,
erstmal vielen Dank für die schnelle Anwtwort.
Hab damit auch schon ein bissel gebastelt. Hab aber noch ein paar Fragen dazu:
Deine Lösung mit Makro ist gut, ich hab nur leider 12 Diagramme, welche alle etwas kleiner auf einem Blatt vorhanden sind. Entweder müsste ich jedes Diagramm einzeln pro Blatt verteilen oder hier meine Idee: ich nehme ein Blatt und lasse per Makro einfach die Datensätze ändern. Die Diagramme/Tabellen sind immer gleich - ändern sich nur in den Werten.
Leider ist mein Wissen um das Openoffic-Basic nicht so groß, und ein Basteln per Makro-Aufnahme und Lernen sieht auch nicht nach Erfolg aus. Hier wird einfach zuviel mit Objekten gearbeitet. Wobei ich denke, dass ich das gar nicht alles brauche.
Geht bestimmt einfacher.
Es sieht z.Z. so aus:
wobei das mit keypressed, nicht funktioniert - glaub wegen Calc - hier nimmt die Tabelle gleich den Tastendruck entgegen.
Weiterhin wäre es schön, wenn das Makro als Button in der Tabelle verlinkt wird und dieses Linien, Vollbild etc. selber einstellen/verstecken kann.
EDIT: gibt es zum Basic vlt. eine Seite auf deutsch zum Nachlesen?
Grüße,
Matthias
erstmal vielen Dank für die schnelle Anwtwort.
Hab damit auch schon ein bissel gebastelt. Hab aber noch ein paar Fragen dazu:
Deine Lösung mit Makro ist gut, ich hab nur leider 12 Diagramme, welche alle etwas kleiner auf einem Blatt vorhanden sind. Entweder müsste ich jedes Diagramm einzeln pro Blatt verteilen oder hier meine Idee: ich nehme ein Blatt und lasse per Makro einfach die Datensätze ändern. Die Diagramme/Tabellen sind immer gleich - ändern sich nur in den Werten.
Leider ist mein Wissen um das Openoffic-Basic nicht so groß, und ein Basteln per Makro-Aufnahme und Lernen sieht auch nicht nach Erfolg aus. Hier wird einfach zuviel mit Objekten gearbeitet. Wobei ich denke, dass ich das gar nicht alles brauche.
Code: Alles auswählen
sub alles_weg
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 ----------------------------------------------------------------------
dim args1(0) as new com.sun.star.beans.PropertyValue
args1(0).Name = "InputLineVisible"
args1(0).Value = false
dispatcher.executeDispatch(document, ".uno:InputLineVisible", "", 0, args1())
rem ----------------------------------------------------------------------
dim args2(0) as new com.sun.star.beans.PropertyValue
args2(0).Name = "StatusBarVisible"
args2(0).Value = false
dispatcher.executeDispatch(document, ".uno:StatusBarVisible", "", 0, args2())
rem ----------------------------------------------------------------------
dim args3(0) as new com.sun.star.beans.PropertyValue
args3(0).Name = "ViewRowColumnHeaders"
args3(0).Value = false
dispatcher.executeDispatch(document, ".uno:ViewRowColumnHeaders", "", 0, args3())
end sub

Es sieht z.Z. so aus:
Code: Alles auswählen
sub Main
do until keypressed
With Thiscomponent
For i = 4 To 6
.CurrentController.SetActiveSheet(.Sheets().getByIndex(i))
Wait 5000 'entspricht 5 Sekunden
Next i
End With
loop
end sub
Weiterhin wäre es schön, wenn das Makro als Button in der Tabelle verlinkt wird und dieses Linien, Vollbild etc. selber einstellen/verstecken kann.
EDIT: gibt es zum Basic vlt. eine Seite auf deutsch zum Nachlesen?
Grüße,
Matthias