Screenshot abspeichern mit VBA
11.06.2021 10:01:44
Johannes
heute habe ich voller Stolz meinen ersten VBA code hier zu Bewunderung veröffentlicht!
(nur ein kleiner Spaß, Ich weiß sehr gut, dass der code ehe eine "Krankheit als gut ist)
Ziel ist es ein koordiniertes abfragen von Datenquellen mit abschließendem speichern als .htm
und dann wieder als .xlsm, weil als .htm Arbeitsmappe meine Codes und abfragen nicht mehr gelaufen sind.
Leider ist die Datei extrem groß und somit auch langsam als Webseite und da mir auf der Webseite eigentlich ein Screenshot reichen würde
hab ich leider erfolglos einige Codes und auch Makro Rekords probiert zum Thema Screenshot.
Könnte mir jemand bitte mich von meinem Leid erlösen und mir helfen anstatt HTML-File, einem Screenshot vom
"Druckbereich" oder "A1:V47" auf demselben Speicherplatz zu speichern.
Jetzt mein Code der so weit funktioniert
Vielen Dank
Hannes
Sub save2()
Dim Duration, Start
Duration = 60
Start = Timer
Do While Timer
und die codes die ich versucht habe aber nicht funktionieren (alle .jpg zeigen nur weisses bild).
Sub bild()
' nur weisses bild im abgespeicherten .JPG aber perfekte grafik mitten im Bildschirm
CODE 1
Application.ScreenUpdating = False
Dim bild As Chart
Dim ws As Worksheet
Set ws = ThisWorkbook.ActiveSheet
Selection.CopyPicture
Set bild = Charts.Add
On Error Resume Next
bild.ChartArea.Clear
bild.Location Where:=xlLocationAsObject, Name:=ws.Name
Set bild = ActiveChart
bild.Paste
With ActiveSheet.Shapes(Right(bild.Name, InStr(1, bild.Name, "Dia") + 1))
.Height = Selection.ShapeRange.Height + 50
.Width = Selection.ShapeRange.Width + 50
'pfad anpassen!!!!!
bild.Export Filename:="G:\FTP_Main_Folder\Hannes\Webseite Excel\test.jpg", filterName:="jpg"
.Delete
End With
Application.ScreenUpdating = True
End Sub
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------CODE 2
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Sub BereichAlsBildExportieren()
Application.ScreenUpdating = False
Range(ActiveSheet.PageSetup.PrintArea).CopyPicture Appearance:=xlPrinter, Format:=xlPicture
With ActiveSheet.ChartObjects.Add(0, 0, Range(ActiveSheet.PageSetup.PrintArea).Width, Range( _
ActiveSheet.PageSetup.PrintArea).Height).Chart
.Paste
.Export Filename:="G:\FTP_Main_Folder\Hannes\Webseite Excel\" & ThisWorkbook.Name & ".jpg", filterName:="JPG"
.Parent.Delete
End With
Application.ScreenUpdating = True
'leider nur ein weisses feld im .jpg
End Sub
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------CODE 3 Makro record
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Sub Screenshot_Macro_2()
' Screenshot_Macro_2 Makro
' 2. versuch
Sheets("All").Select
ActiveWindow.SmallScroll ToRight:=-1
Range("A1:V47").Select
Selection.CopyPicture Appearance:=xlScreen, Format:=xlPicture
Sheets("Tabelle1").Select
ActiveSheet.Paste
ActiveSheet.Shapes.Range(Array("Picture 4")).Select
End Sub