Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1288to1292
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Diagramm speichern aus verkleinertem Fenster
18.12.2012 11:10:53
Michael
Hallo Zusammen,
ich stehe vor folgendem Problem. Per VBA exportiere ich ein Diagramm um es anschließend wieder in einer Picture-Box einlesen zu können. Das Ganze funktioniert auch sofern das Diagramm im Windowsfenster dargestellt wird. Sobald man aber in der Tabelle scrollt oder das Fenster minimiert und das Diagramm somit nicht mehr dargestellt wird, bekomme ich den Fehler "ungültiges Bild". Die exportierte Datei hat dann ebenfalls eine Größe von 0 KB.
Weis jemand an was das liegen könnte? Kennt jemand das Problem?
Über Eure hilfe wäre ich sehr dankbar.
Grüße Michael
Anbei noch der zugehörige Code:
Sub diagram_layout()
Dim Diagramm As Chart
Dim Dateiname As String
With ThisWorkbook.Worksheets("Diagram_Layout")
'Löscht diagramme
If .ChartObjects.Count > 0 Then
.ChartObjects.Delete
End If
End With
If UserForm1.ComboBox40.ListCount  0 Then
Bereit = False
Warten = False
'erstellt neues diagramm
Set Diagramm = ThisWorkbook.Worksheets("Diagram_Layout").ChartObjects.Add(900, 10, 500, 300). _
Chart
'Entfernt Rahmen des Diagramms
ThisWorkbook.Worksheets("Diagram_Layout").ChartObjects(1).Border.LineStyle = 0
With Diagramm
.ChartType = xlXYScatter
.HasTitle = True
.ChartTitle.Caption = ThisWorkbook.Worksheets("Übersetzung").Range("C121")
'Diagrammüberschrift
With .ChartTitle.Characters.Font
.Size = 13
.Bold = False
End With
'___________________________________
'Diagramm Konstantpumpe
'___________________________________
.SeriesCollection.NewSeries
.SeriesCollection.NewSeries
'SeriesCollection(1)
.SeriesCollection(1).Name = ThisWorkbook.Worksheets("Übersetzung").Range("C109")
.SeriesCollection(1).ChartType = xlXYScatterLinesNoMarkers
'.SeriesCollection(1).MarkerStyle = 2
'.SeriesCollection(1).MarkerSize = 7
'Wertebereich
.SeriesCollection(1).XValues = ThisWorkbook.Worksheets("Diagram_Layout").Range("A2:A3")
.SeriesCollection(1).Values = ThisWorkbook.Worksheets("Diagram_Layout").Range("B2:B3")
'.ChartTitle.Text = ""
'Notwendig um sekundärachse einzublenden
.SeriesCollection(2).AxisGroup = 2
Select Case UserForm1.ComboBox40.ListIndex
Case "0"
.SeriesCollection.NewSeries
'SeriesCollection(3)
.SeriesCollection(3).Name = "Kennpunkte"
.SeriesCollection(3).ChartType = xlXYScatter
'.SeriesCollection(3).MarkerStyle = 2
'.SeriesCollection(3).MarkerSize = 7
'Wertebereich
.SeriesCollection(3).XValues = ThisWorkbook.Worksheets("Diagram_Layout").Range("J2:  _
_
_
J2")
.SeriesCollection(3).Values = ThisWorkbook.Worksheets("Diagram_Layout").Range("K2:   _
_
_
K2")
'Datenbeschriftung
.SeriesCollection(3).ApplyDataLabels
.SeriesCollection(3).Points(1).DataLabel.Text = ThisWorkbook.Worksheets("Ü _
bersetzung").Range("C105")
'Löscht Legendeneinträge
.HasLegend = False
.HasLegend = True
.Legend.LegendEntries(3).Delete
.Legend.LegendEntries(2).Delete
'___________________________________
'Diagramm einstufige Regelung
'___________________________________
Case "1"
.SeriesCollection.NewSeries
.SeriesCollection.NewSeries
.SeriesCollection.NewSeries
'SeriesCollection(3)
.SeriesCollection(3).Name = "Kennpunkte"
.SeriesCollection(3).ChartType = xlXYScatter
'.SeriesCollection(3).MarkerStyle = 2
'.SeriesCollection(3).MarkerSize = 7
'Wertebereich
.SeriesCollection(3).XValues = ThisWorkbook.Worksheets("Diagram_Layout").Range("J6:J7")
.SeriesCollection(3).Values = ThisWorkbook.Worksheets("Diagram_Layout").Range("K6:K7")
'.ChartTitle.Text = ""
'Datenbeschriftung
.SeriesCollection(3).ApplyDataLabels
.SeriesCollection(3).Points(1).DataLabel.Text = ThisWorkbook.Worksheets("Ü _
bersetzung").Range("C106")
.SeriesCollection(3).Points(2).DataLabel.Text = ThisWorkbook.Worksheets("Ü _
bersetzung").Range("C105")
'SeriesCollection(4)
.SeriesCollection(4).Name = ThisWorkbook.Worksheets("Übersetzung").Range("C110")
.SeriesCollection(4).ChartType = xlXYScatterLinesNoMarkers
'.SeriesCollection(4).MarkerStyle = 2
'.SeriesCollection(4).MarkerSize = 7
'Wertebereich
.SeriesCollection(4).XValues = ThisWorkbook.Worksheets("Diagram_Layout").Range("A6:A8")
.SeriesCollection(4).Values = ThisWorkbook.Worksheets("Diagram_Layout").Range("B6:B8")
'SeriesCollection(5) 'Fläche unten
.SeriesCollection(5).Name = "Fläche unten"
.SeriesCollection(5).AxisGroup = 2
.SeriesCollection(5).ChartType = xlAreaStacked
With .SeriesCollection(5).Format.Fill
.Visible = msoTrue
.ForeColor.RGB = RGB(128, 100, 162)
.Transparency = 0.5
.Solid
End With
'Wertebereich
.SeriesCollection(5).XValues = ThisWorkbook.Worksheets("Diagram_Layout").Range("E5:E10") _
_
_
.SeriesCollection(5).Values = ThisWorkbook.Worksheets("Diagram_Layout").Range("F5:F10")
'Stellt sekundäre x Achse auf Datums
.Axes(xlCategory, xlSecondary).CategoryType = xlTimeScale
'Schaltet sekundäre x und y Achse aus
.HasAxis(xlCategory, xlSecondary) = False
.HasAxis(xlValue, xlSecondary) = True
'Löscht Legendeneinträge
.HasLegend = False
.HasLegend = True
.Legend.LegendEntries(5).Delete
.Legend.LegendEntries(3).Delete
.Legend.LegendEntries(1).Delete
'___________________________________
'Diagramm zweistufige Regelung
'___________________________________
Case "2"
.SeriesCollection.NewSeries
.SeriesCollection.NewSeries
.SeriesCollection.NewSeries
'SeriesCollection(4)
.SeriesCollection(4).Name = ThisWorkbook.Worksheets("Übersetzung").Range("C111")
.SeriesCollection(4).ChartType = xlXYScatterLinesNoMarkers
'Wertebereich
.SeriesCollection(4).XValues = ThisWorkbook.Worksheets("Diagram_Layout").Range("A13:A17" _
_
_
)
.SeriesCollection(4).Values = ThisWorkbook.Worksheets("Diagram_Layout").Range("B13:B17") _
_
_
With .SeriesCollection(4).Format.Line
.Visible = msoTrue
.ForeColor.RGB = RGB(238, 166, 22)
.Transparency = 0
End With
'SeriesCollection(3)
.SeriesCollection(3).Name = "Kennpunkte"
.SeriesCollection(3).ChartType = xlXYScatter
'.SeriesCollection(3).MarkerStyle = 2
'.SeriesCollection(3).MarkerSize = 7
'Wertebereich
.SeriesCollection(3).XValues = ThisWorkbook.Worksheets("Diagram_Layout").Range("J13:J15" _
_
_
)
.SeriesCollection(3).Values = ThisWorkbook.Worksheets("Diagram_Layout").Range("K13:K15") _
_
_
'Datenbeschriftung
.SeriesCollection(3).ApplyDataLabels
.SeriesCollection(3).Points(1).DataLabel.Text = ThisWorkbook.Worksheets("Übersetzung").  _
_
_
Range("C106")
.SeriesCollection(3).Points(2).DataLabel.Text = ThisWorkbook.Worksheets("Übersetzung").  _
_
_
Range("C107")
.SeriesCollection(3).Points(3).DataLabel.Text = ThisWorkbook.Worksheets("Übersetzung").  _
_
_
Range("C108")
'SeriesCollection(5) 'Fläche unten
.SeriesCollection(5).Name = "Fläche unten"
.SeriesCollection(5).AxisGroup = 2
.SeriesCollection(5).ChartType = xlAreaStacked
With .SeriesCollection(5).Format.Fill
.Visible = msoTrue
.ForeColor.RGB = RGB(255, 192, 0)
.Transparency = 0.6
.Solid
End With
'Wertebereich
.SeriesCollection(5).XValues = ThisWorkbook.Worksheets("Diagram_Layout").Range("E12:E19" _
_
_
)
.SeriesCollection(5).Values = ThisWorkbook.Worksheets("Diagram_Layout").Range("F12:F19") _
_
_
'Stellt sekundäre x Achse auf Datums
.Axes(xlCategory, xlSecondary).CategoryType = xlTimeScale
'Schaltet sekundäre x und y Achse aus
.HasAxis(xlCategory, xlSecondary) = False
.HasAxis(xlValue, xlSecondary) = True
'Löscht Legendeneinträge
.HasLegend = False
.HasLegend = True
.Legend.LegendEntries(5).Delete
.Legend.LegendEntries(3).Delete
.Legend.LegendEntries(1).Delete
'___________________________________
'Diagramm Kennfeldregelung
'___________________________________
Case "3"
.SeriesCollection.NewSeries
.SeriesCollection.NewSeries
.SeriesCollection.NewSeries
.SeriesCollection.NewSeries
.SeriesCollection.NewSeries
'Achsen ein/ausschalten
.HasAxis(xlCategory, xlPrimary) = True
.HasAxis(xlValue, xlPrimary) = True
.HasAxis(xlCategory, xlSecondary) = True
'SeriesCollection(3) 'Kennpunkte
.SeriesCollection(3).Name = "Kennpunkte"
.SeriesCollection(3).ChartType = xlXYScatter
'.SeriesCollection(3).MarkerStyle = 2
'.SeriesCollection(3).MarkerSize = 7
'Wertebereich
.SeriesCollection(3).XValues = ThisWorkbook.Worksheets("Diagram_Layout").Range("J22:J26" _
_
_
)
.SeriesCollection(3).Values = ThisWorkbook.Worksheets("Diagram_Layout").Range("K22:K26") _
_
_
'Datenbeschriftung
.SeriesCollection(3).ApplyDataLabels
.SeriesCollection(3).Points(1).DataLabel.Text = ThisWorkbook.Worksheets("Übersetzung").  _
_
_
Range("C106")
.SeriesCollection(3).Points(2).DataLabel.Text = ThisWorkbook.Worksheets("Übersetzung").  _
_
_
Range("C107")
.SeriesCollection(3).Points(3).DataLabel.Text = ThisWorkbook.Worksheets("Übersetzung").  _
_
_
Range("C108")
.SeriesCollection(3).Points(4).DataLabel.Text = ThisWorkbook.Worksheets("Übersetzung").  _
_
_
Range("C107")
.SeriesCollection(3).Points(5).DataLabel.Text = ThisWorkbook.Worksheets("Übersetzung").  _
_
_
Range("C108")
'SeriesCollection(4) 'Teillastbereich
.SeriesCollection(4).Name = ThisWorkbook.Worksheets("Übersetzung").Range("C116")
.SeriesCollection(4).ChartType = xlXYScatterLinesNoMarkers
With .SeriesCollection(4).Format.Line
.Visible = msoTrue
.ForeColor.RGB = RGB(236, 112, 10)
.Transparency = 0
End With
'Wertebereich
.SeriesCollection(4).XValues = ThisWorkbook.Worksheets("Diagram_Layout").Range("A22:A25" _
_
_
)
.SeriesCollection(4).Values = ThisWorkbook.Worksheets("Diagram_Layout").Range("B22:B25") _
_
_
'SeriesCollection(5) 'Volllastbereich
.SeriesCollection(5).Name = ThisWorkbook.Worksheets("Übersetzung").Range("C117")
.SeriesCollection(5).ChartType = xlXYScatterLinesNoMarkers
With .SeriesCollection(5).Format.Line
.Visible = msoTrue
.ForeColor.RGB = RGB(192, 0, 0)
.Transparency = 0
End With
'Wertebereich
.SeriesCollection(5).XValues = ThisWorkbook.Worksheets("Diagram_Layout").Range("A22:A25" _
_
_
)
.SeriesCollection(5).Values = ThisWorkbook.Worksheets("Diagram_Layout").Range("C22:C25") _
_
_
'SeriesCollection(6) 'Fläche unten
.SeriesCollection(6).Name = "Fläche unten"
.SeriesCollection(6).AxisGroup = 2
.SeriesCollection(6).ChartType = xlAreaStacked
.SeriesCollection(6).Format.Fill.Visible = msoFalse
'Wertebereich
.SeriesCollection(6).XValues = ThisWorkbook.Worksheets("Diagram_Layout").Range("E21:E27" _
_
_
)
.SeriesCollection(6).Values = ThisWorkbook.Worksheets("Diagram_Layout").Range("F21:F27") _
_
_
'SeriesCollection(7) 'Kennfeld
.SeriesCollection(7).Name = ThisWorkbook.Worksheets("Übersetzung").Range("C118")
.SeriesCollection(7).AxisGroup = 2
.SeriesCollection(7).ChartType = xlAreaStacked
With .SeriesCollection(7).Format.Fill
.Visible = msoTrue
.ForeColor.ObjectThemeColor = msoThemeColorAccent2
.Transparency = 0.3
.Solid
End With
'Wertebereich
.SeriesCollection(7).XValues = ThisWorkbook.Worksheets("Diagram_Layout").Range("E21:E27" _
_
_
)
.SeriesCollection(7).Values = ThisWorkbook.Worksheets("Diagram_Layout").Range("G21:G27") _
_
_
'Stellt sekundäre x Achse auf Datums
.Axes(xlCategory, xlSecondary).CategoryType = xlTimeScale
'Schaltet sekundäre x und y Achse aus
.HasAxis(xlCategory, xlSecondary) = False
.HasAxis(xlValue, xlSecondary) = True
'Löscht Legendeneinträge
.HasLegend = False
.HasLegend = True
.Legend.LegendEntries(7).Delete
.Legend.LegendEntries(4).Delete
.Legend.LegendEntries(2).Delete
End Select
'Passt größe des Diagramms auf größe des Image-Fensters an
.Parent.Width = UserForm1.Image1.Width
.Parent.Height = UserForm1.Image1.Height
'.PlotArea.Left = "15"
'.PlotArea.Top = "3"
'.PlotArea.Width = UserForm2.Image1.Width - 45
'.PlotArea.Height = UserForm2.Image1.Height - 50
'Richtet Achsenbeschriftungen aus
.SetElement (msoElementPrimaryCategoryAxisTitleAdjacentToAxis)
.SetElement (msoElementPrimaryValueAxisTitleRotated)
'schaltet x primärachse aus und y primärachse ein
.HasAxis(xlCategory, xlPrimary) = True
.HasAxis(xlValue, xlPrimary) = True
'Richtet Legende aus
.SetElement (msoElementLegendBottom)
'Eigenschaften der y-Achse
With Diagramm.Axes(xlValue, xlPrimary)
.MaximumScale = 6
.MinimumScale = 0
.MinorUnitIsAuto = True
.MajorUnitIsAuto = True
.HasTitle = True
.AxisTitle.Font.Bold = False 'deaktiviert Fette schrift
'Schaltet Achsenstriche und -beschriftung aus
.MajorTickMark = xlNone
.MinorTickMark = xlNone
.TickLabelPosition = xlNone
'Titel der y-Achse
.AxisTitle.Caption = ThisWorkbook.Worksheets("Übersetzung").Range("C113")
End With
'Eigenschaften der sekundären y-Achse
With Diagramm.Axes(xlValue, xlSecondary)
.MaximumScale = 6
.MinimumScale = 0
.MinorUnitIsAuto = True
.MajorUnitIsAuto = True
.HasTitle = True
.AxisTitle.Font.Bold = False
'Schaltet Achsenstriche und -beschriftung aus
.MajorTickMark = xlNone
.MinorTickMark = xlNone
.TickLabelPosition = xlNone
'Titel der y-Achse
.AxisTitle.Caption = ThisWorkbook.Worksheets("Übersetzung").Range("C120")
End With
'Eigenschaften der x-Achse
With Diagramm.Axes(xlCategory)
.MaximumScale = 7500
.MinimumScale = 0
.HasTitle = True
.AxisTitle.Font.Bold = False 'deaktiviert Fette schrift
.MinorUnitIsAuto = True
.MajorUnitIsAuto = True
'Titel der x-Achse
.AxisTitle.Caption = ThisWorkbook.Worksheets("Übersetzung").Range("C122")
'Schaltet Achsenstriche und -beschriftung aus
.MajorTickMark = xlNone
.MinorTickMark = xlNone
.TickLabelPosition = xlNone
End With
End With
Dateiname = Environ("temp") & "\diagramm_layout.gif"
Diagramm.Export Filename:=Dateiname, filtername:="GIF"
DoEvents
Application.ScreenUpdating = False
UserForm1.Image1.Picture = LoadPicture(Dateiname)                                 'Lädt Bild in  _
_
_
Imagebox
Application.ScreenUpdating = True
Bereit = True
End If
End Sub

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Diagramm speichern aus verkleinertem Fenster
18.12.2012 13:12:48
Beverly
Hi Michael,
an welcher Stelle im Code kommt denn der Fehler?
Da mir deine Arbeitsmappe nicht zur Verfügung steht und ich sie auch nicht nachbaue um deinen Code zu testen, kann ich nur mal generell sagen: es spielt keine Rolle, ob sich das Diagramm im Sichtbereich des Tabellenblattes befindet oder nicht. Man kann ja auch problemlos ein Diagramm exportieren, welches sich auf einam anderen Tabellenblatt befindet. In der VBA-Hilfe steht z.B. dieser Code
Worksheets("Sheet1").ChartObjects(1).Chart.Export _
FileName:="current_sales.gif", FilterName:="GIF"
und da befindet sich das Diagramm definitv nicht im Sichtbereich des aktiven Tabellenblattes.


Anzeige
AW: Diagramm speichern aus verkleinertem Fenster
18.12.2012 13:53:13
Michael
Hallo Karin,
grundsätzlich gebe ich dir recht. Der Problem entsteht auch nicht beim speichern sondern bereits beim erstellen des diagramms. Um meine Problematik zu verdeutlichen habe ich mal eine Beispielmappe gebastelt.
Ich hoffe das Problem wird dir dann klar.
Beispiel: https://www.herber.de/bbs/user/83060.xls

AW: Diagramm speichern aus verkleinertem Fenster
18.12.2012 16:15:04
Michael
Hallo Zusammen,
hat sonst keiner eine Idee und könnte mir weiterhelfen?
Wäre sehr nett.
Danke
Gruß Michi

AW: Diagramm speichern aus verkleinertem Fenster
18.12.2012 16:35:31
Beverly
Hi Michael,
das Problem entsteht nicht beim Erstellen des Diagramms, das Diagramm ist doch trotzdem korrekt im Tabellenblatt vorhanden, nur eben das exportierte Bild im Speicherpfad ist "leer". Wird dagegen ein bereits vorhandenes Diagramm exportiert und in das Image geladen, gibt es kein Problem. Der Fehler liegt also irgendwo zwischen dem Schritt des Erstellens des Diagramms und dem Schritt des Speicherns als Bild.
Ich habe dafür leider keine Lösung, deshalb stelle ich die Frage auf Offen.


Anzeige
AW: Diagramm speichern aus verkleinertem Fenster
19.12.2012 08:26:06
Michael
Hallo Karin,
du hast recht, der Fehler entsteht irgendwo zwischen erstellen und speichern des Diagrammes. Habe mich gestern nochmals intensiv damit beschäfigt, konnte den Fehler allerdings immernoch nicht ausfindig machen.
Hoffe jemand anderes hat noch einen Lösungsvorschlag.
Gruß Michi

Alternativlösungen
19.12.2012 09:28:23
Beverly
Hi Michael,
du wirst da auch keinen Fehler finden, denn das Problem liegt tief im Inneren von Excel verborgen.
Mögliche Alternativlösungen:
1. du könntest das Diagramm an der Position des 2. CommandButton erstellen und nach dem Export an die gewünschte Position verschieben
Private Sub CommandButton2_Click()
Dim Dateiname As String
Dateiname = Environ("USERPROFILE") & "\Desktop" & "\diagramm_layout.gif"
If Me.ChartObjects.Count > 0 Then Me.ChartObjects.Delete
With ThisWorkbook.Worksheets(1).ChartObjects.Add(CommandButton2.Left, CommandButton2.Top,  _
500, 300).Chart
.SeriesCollection.NewSeries
.SeriesCollection(1).ChartType = xlXYScatterLines
.SeriesCollection(1).XValues = ThisWorkbook.Worksheets(1).Range("A1:A10")
.SeriesCollection(1).Values = ThisWorkbook.Worksheets(1).Range("B1:B10")
.Export Filename:=Dateiname, filtername:="GIF"
With .Parent
.Top = 0
.Left = 0
End With
DoEvents
End With
Me.Image1.Picture = LoadPicture(Dateiname)
End Sub
2. weshalb muss das Diagramm jedes Mal neu erstellt werden? Wenn sich die Daten ändern passt es sich doch automatisch an. Das bereits vorhandene (und mit veränderten Daten aktualisierte) Diagramm lässt sich doch problemlos exportieren und ins Image laden, auch wenn es nicht im Sichtbereich liegt.
Private Sub CommandButton2_Click()
Dim Dateiname As String
Dateiname = Environ("USERPROFILE") & "\Desktop" & "\diagramm_layout.gif"
ThisWorkbook.Worksheets(1).ChartObjects(1).Chart.Export Filename:=Dateiname, filtername:=" _
GIF"
Me.Image1.Picture = LoadPicture(Dateiname)
End Sub


Anzeige
AW: Alternativlösungen
19.12.2012 09:44:37
Michael
Hallo Karin,
danke für deine alternative Methode. Da es sich allerdings nur um eine Beispiel Mappe handelt, kann ich diese Lösung nicht auf meine eigentliche Mappe übertragen.
Aufgrund der Komplexität des Diagrammes wollte ich es mir einfach machen und das Diagramm jedes mal neu erstellen. Da es aber anscheinend keine Lösung dafür gibt, muss ich den Code wohl ändern und mit dem existierenden Diagramm arbeiten.
Bin bis dahin davon ausgegangen, dass es sich um ein Programmierungsfehler handelt.
Trotzdem möchte ich mich für deine Mühe bedanken.
Grüße Michael

AW: Alternativlösungen
19.12.2012 09:59:59
Beverly
Hi Michael,
Zitat: Aufgrund der Komplexität des Diagrammes wollte ich es mir einfach machen und das Diagramm jedes mal neu erstellen.
Diagramme per VBA zu erstellen ist Speicher- und/oder CPU-lastig und verlangsamt das ganze Projekt. Ein vorhandenes Diagramm aktualisiert sich mit neuen Daten "von ganz alleine" und ist deshalb wesentlich performenter. Selbst in dem Fall, dass ein Diagramm nur unter bestimmten Bedingungen angezeigt werden soll, wäre es güstiger, das Diagramm aus- bzw. einzublenden anstelle es jedes Mal neu zu erstellen und wieder zu löschen.


Anzeige
AW: Alternativlösungen
19.12.2012 10:05:18
Michael
Hallo Karin,
danke das ist mir bewusst. Es ändert sich aber nicht nur der Inhalt des Diagrammes sondern der ganze Aufbau bzw. der Typ des Diagrammes, wie du dem Code entnehmen kannst.
Nochmals danke für deine Hilfe.
Gruß Michael

AW: Alternativlösungen
19.12.2012 10:41:55
Beverly
Hi Michael,
auch in diesem Fall würde ich es vorziehen, zuerst von Hand alle Varianten an Diagrammen zu erstellen, sie aufeinander zu legen und bei Bedarf einzublenden.
Ich habe es jetzt nicht getest, aber eine weitere Möglichkeit wäre vielleicht auch, ein bereits vorhandenes Diagramm per VBA "umzugestalten" anstelle es per VBA komplett neu zu erstellen, weil das Exportproblem vielleicht mit dem Erstellen des "Containers" für das Diagramm zusammenhängt, wenn dieser nicht im Sichtbereich liegt.


Anzeige

299 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige