23.10.2020, 15:22
Hallöle alle zusammen,
ich habe das Problem, dass mein Code nur den gewünschten Effekt hat wenn ich ihn in Einzelschritten durchgehe.
Ziel ist es mehrere Zellbereiche als einzelne Bilder zu speichern und wenn ich den Code komplett laufen lasse sind meine Bilder leer
Vielleicht weiß einer von euch wo das Problem liegt
Habe auch schon an diversen Stellen versucht eine Pause einzubinden, jedoch hat das nicht geholfen.
Sub BildSave()
STATISTIK2.Cells(1, 1).Select
Range_To_Image "KERAPIC", "KERA"
Range_To_Image "HKKPIC", "HKK"
Range_To_Image "MIKAPIC", "MIKA"
Range_To_Image "DUESENPIC", "DUESEN"
Range_To_Image "DH500PIC", "DH500"
End Sub
Sub Range_To_Image(ByVal Bereich As String, BildName As String)
Dim objPict As Object, objChrt As Chart
Dim rngImage As Range, strFile As String
On Error GoTo ErrExit
With STATISTIK2 'Tabellenname - Anpassen!
Set rngImage = .Range(Bereich)
rngImage.CopyPicture Appearance:=xlScreen, Format:=xlBitmap
.PasteSpecial Format:="Bitmap", Link:=False, DisplayAsIcon:=False
Set objPict = .Shapes(.Shapes.Count)
strFile = "c:\Laufwerk_D\AK\POWERPOINT\" & BildName & ".jpg" 'Pfad und Dateiname für das Bild
objPict.Copy
Set objChrt = .ChartObjects.Add(1, 1, objPict.Width, objPict.Height).Chart
objChrt.Paste
objChrt.Export strFile
objChrt.Parent.Delete
objPict.Delete
End With
ErrExit:
Set objPict = Nothing
Set objChrt = Nothing
Set rngImage = Nothing
STATISTIK2.Cells(1, 1).Select
End Sub
ich habe das Problem, dass mein Code nur den gewünschten Effekt hat wenn ich ihn in Einzelschritten durchgehe.
Ziel ist es mehrere Zellbereiche als einzelne Bilder zu speichern und wenn ich den Code komplett laufen lasse sind meine Bilder leer
Vielleicht weiß einer von euch wo das Problem liegt
Habe auch schon an diversen Stellen versucht eine Pause einzubinden, jedoch hat das nicht geholfen.
Sub BildSave()
STATISTIK2.Cells(1, 1).Select
Range_To_Image "KERAPIC", "KERA"
Range_To_Image "HKKPIC", "HKK"
Range_To_Image "MIKAPIC", "MIKA"
Range_To_Image "DUESENPIC", "DUESEN"
Range_To_Image "DH500PIC", "DH500"
End Sub
Sub Range_To_Image(ByVal Bereich As String, BildName As String)
Dim objPict As Object, objChrt As Chart
Dim rngImage As Range, strFile As String
On Error GoTo ErrExit
With STATISTIK2 'Tabellenname - Anpassen!
Set rngImage = .Range(Bereich)
rngImage.CopyPicture Appearance:=xlScreen, Format:=xlBitmap
.PasteSpecial Format:="Bitmap", Link:=False, DisplayAsIcon:=False
Set objPict = .Shapes(.Shapes.Count)
strFile = "c:\Laufwerk_D\AK\POWERPOINT\" & BildName & ".jpg" 'Pfad und Dateiname für das Bild
objPict.Copy
Set objChrt = .ChartObjects.Add(1, 1, objPict.Width, objPict.Height).Chart
objChrt.Paste
objChrt.Export strFile
objChrt.Parent.Delete
objPict.Delete
End With
ErrExit:
Set objPict = Nothing
Set objChrt = Nothing
Set rngImage = Nothing
STATISTIK2.Cells(1, 1).Select
End Sub