Ein direkter Zugriff mittels Kontrollelement in einem Formular ist mir nicht bekannt, aber folgender Weg funktioniert:
1. In ein Writer Dokument mit "Einfügen/Objekt/Diagramm" ein Dagramm einfügen.
Die Datenquelle dieses Diagramms ist nun NICHT in der Datenbank, sondern eine "intern im Diargamm gespeichterte Tabelle" (als Array).
2. Das Diagramm einfach so formatieren wie man's braucht, und dann das ganze Objekt mit Copy/Paste in das gewünschte Base-Formular kopieren.
3. einen Button im Diagramm anlegen - Bezeichnung z.B. "Diagramm aktualisieren"
Das Verändern der Daten kann man dann mit folgendem Makro realisieren:
Code: Alles auswählen
sub ChangeData(oEvent)
NewData=Array(array(1,2,3,4),array(1,2,3,4),array(1,2,3.5,4),array(1,2,3,4),array(1,2,3,4),array(1,2,5,4))
oEvent.Source.Model.Parent.Parent.Parent.EmbeddedObjects.getByIndex(0).Component.Data.Data = NewData()
oEvent.Source.Model.Parent.Parent.Parent.refresh
end sub
Das Array "NewData" hat dann PRO ZEILE ein Unter-Array und die Elemente dieser Unterarrays ... etc da gibt's so viele Erklärungen wie's Diagrammtypen gibt...
Du musst also ein bisschen rumprobieren, aber dieses Vorgehen läuft sehr stabil!
Das Aktualisieren des Diagramms muss ja nicht an den Button gebunden werden, es kann auch an irgendein anderes Event gekoppelt werden, z.B. einen Datensatzwechsel, dann könnte z.B. in einem Formular für Aktien immer der Kursverlauf der aktuell angezeigten Aktie dargestellt werden etc. etc.
Beispieldatei im Anhang