ich lasse mir auf einer UserForm ein Diagramm anzeigen. Das funktioniert soweit problemlos. Da mir das weiße Diagramm auf einer grauen UserForm nicht so ganz zusagt möchte ich es in grau umfärben und nach dem Auslesen des Diagramms als Bild, färbe ich es wieder weiß. Dazu habe ich das ganze aufgezeichnet.
Ich lasse das Bild in einer kleinen Sub auslesen und übergebe hier die Chartnummer und das Image auf der UserForm.
Mir geht es jetzt eigentlich "nur" um die Sytax, wie ich von diesem statisch aufgezeichneten Daten es dynamisieren kann? In der letzten Zeile vor Makrorecorder habe ich das mal ersucht, leider ohne Erfolg.
Sub teste_Diagramm()
Call Bild_Anzeigen(5, UF_Main.Image_Chart_1)
End Sub
Public Sub Bild_Anzeigen(ByVal Chart As Integer, ByVal Bild As Object)
Dim Diagramm As Object
Dim Dateiname As String
Dim Chart_Height As Integer
Dim Chart_Width As Integer
Dim Img_Height As Integer
Dim Img_Width As Integer
Img_Height = UF_Main.Image_Chart_1.Height
Img_Width = UF_Main.Image_Chart_1.Width
Set Diagramm = Worksheets(Chart).ChartObjects(1).Chart
Chart_Width = Diagramm.Parent.Width
Chart_Height = Diagramm.Parent.Height
Diagramm.Parent.Width = Img_Width
Diagramm.Parent.Height = Img_Height
Diagramm.Shapes(Chart).Fill.ForeColor.Brightness = -0.0500000007 'es geht um die Syntax dieser Zeile
'------> Makrorecorder
'Sub GrauFärben()
' ActiveSheet.ChartObjects("Diagramm 1").Activate
' With ActiveSheet.Shapes("Diagramm 1").Fill
' .ForeColor.Brightness = -0.0500000007
' End With
' ActiveChart.Legend.Select
' With Selection.Format.Fill
' .ForeColor.Brightness = -0.0500000007
' End With
'End Sub
'Sub WeißFärben()
' ActiveSheet.ChartObjects("Diagramm 1").Activate
' With ActiveSheet.Shapes("Diagramm 1").Fill
' .ForeColor.ObjectThemeColor = msoThemeColorBackground1
' End With
' ActiveChart.Legend.Select
' With Selection.Format.Fill
' .ForeColor.ObjectThemeColor = msoThemeColorBackground1
' End With
'End Sub
Ich hoffe ich konnte mein Problem hinreichend erläutern und mir kann jemand helfen.
Vielen Dank und viele Grüße
Frank