Herbers Excel-Forum - das Archiv
Diagramm aktualisieren
Betrifft: Diagramm aktualisieren
von: Jen
Geschrieben am: 06.10.2003 10:51:03
Hallo Forum,
ich habe zum Diagrammtesten mal folgendes simple Makro erstellt, und stehe jetzt vor dem Problem der Aktualisierung!
Erster Gedanke war:
1. vorhandenes Diagramm entfernen
2. Diagramm_Test() laufen lassen
Aber, wie sage ich:
"lösche vorhandenes Diagramm" ??
und geht es vielleicht mit einer Aktualisierung einfacher/schneller/unkomplizierter, als mit einer Neuerstellung.
Wenn ja, wie mache ich das?
Danke rundherum,
Jen
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Sub Diagramm_Test()
Charts.Add
ActiveChart.ChartType = xlLine
ActiveChart.SetSourceData Source:=Sheets("TestDiagramm").Range("A2:B11"), _
PlotBy:=xlColumns
ActiveChart.Location Where:=xlLocationAsObject, Name:="TestDiagramm"
With ActiveChart
.HasTitle = True
.ChartTitle.Characters.Text = "TestTitel"
.Axes(xlCategory, xlPrimary).HasTitle = True
.Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "TestxAchse"
.Axes(xlValue, xlPrimary).HasTitle = True
.Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = "TestyAchse"
End With
ActiveChart.HasDataTable = False
End Sub
Betrifft: AW: Diagramm aktualisieren
von: Martin Bolleter
Geschrieben am: 06.10.2003 14:49:43
Hallo Jen
so ganz klar ist mir deine Frage nicht: ein Diagramm aktualisiert sich normalerweise automatisch von selbst, sobald du die Quelldaten änderst. Was meinst du also mit "aktualisieren"?
Ein Diagramm löschen geht von Hand ganz simpel: selektieren mit der Maus und taste Delete, resp. bei einem Diagrammblatt Rechtsklick auf den Reiter, Löschen.
Wenn es ein muss, geht es allerdings auch per VBA. Dabei ist wichtig, ob du wirklich ein Diagrammblatt oder ein in eine Tabelle eingebettetes Diagramm meinst. Ich gehe mal von ersterem aus:
Sub diaKill()
Dim chrt As Chart
If ActiveWorkbook.Charts.Count > 0 Then
For Each chrt In ActiveWorkbook.Charts
Application.DisplayAlerts = False
chrt.Delete
Application.DisplayAlerts = True
Next chrt
End If
End Sub
Die Anweisungen "DisplayAlerts" unterdrücken die Rückfrage beim löschen. Wichtig: diese Einstellung muss unbedingt im Code zurückgestellt werden, das geschieht NICHT automatisch bei Programmende.
Viel Glück.
Gruss
Martin