Informationen und Beispiele zum Thema Image | |
---|---|
![]() |
Image-Seite mit Beispielarbeitsmappe aufrufen |
Informationen und Beispiele zum Thema RefEdit | |
---|---|
![]() |
RefEdit-Seite mit Beispielarbeitsmappe aufrufen |
Betrifft: Bereich als Bild speichern.
von: Marlo
Geschrieben am: 24.09.2019 14:50:04
Hallo liebe Excel-Freunde,
Ich habe vor, einen bestimmten Bereich als Bild an einem Ort abzuspeichern.
Ich habe das ganze bereits hier gefunden:
https://www.herber.de/forum/archiv/1128to1132/1130567_Grafik_oder_Bereich_mit_VBA_als_Bild_speichern.html
Da ich noch VBA-Anfänger bin, habe ich den zweiten Code benutzt. Dieser sah für mich leichter aus.
Leider speichert sich das Bild in weiß und ohne Inhalt ab.
In folgender Quelle wurde dann vorgeschlagen, eine leichte Änderung vorzunehmen.
http://www.office-loesung.de/ftopic568394_0_0_asc.php
Dies funktioniert leider auch nicht. Kennt ihr da noch eine weitere Möglichkeit?
Optimalerweise soll das Bild als PNG/JPG abgespeichert werden.
Vielleicht könnt Ihr mir dabei helfen. :)
Vielen Dank schonmal,
Mit freundlichen Grüßen
Marlo
Betrifft: AW: Bereich als Bild speichern.
von: Torsten
Geschrieben am: 24.09.2019 15:02:22
Hallo Marlo,
kann ich nicht nachvollziehen. Habe den Code bei mir getestet. Laeuft.
Du musst natuerlich im Code den Tabellennamen anpassen von dem du das Bild machst. Viellecht ist die Tabelle leer, von der DU das Bild machst?
Gruss Torsten
Betrifft: AW: Bereich als Bild speichern.
von: Marlo
Geschrieben am: 24.09.2019 15:28:37
Hallo Torsten,
mein aktueller Code sieht folgendermaßen aus:
Option Explicit Sub Range_To_Image() Dim objPict As Object, objChrt As Chart Dim rngImage As Range, strFile As String On Error GoTo ErrExit With Sheets("KW") 'Tabellenname - Anpassen!' Set rngImage = .Range("B1:I24") rngImage.CopyPicture Appearance:=xlScreen, Format:=xlPicture .PasteSpecial Format:="Bitmap", Link:=False, DisplayAsIcon:=False Set objPict = .Shapes(.Shapes.Count) strFile = "C:\Tempexc\Migration.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 End SubSowohl Tabellenname als auch Bereiche habe ich angepasst.
Betrifft: AW: Bereich als Bild speichern.
von: Nepumuk
Geschrieben am: 24.09.2019 18:17:07
Hallo Marlo,
teste mal:
Betrifft: AW: Bereich als Bild speichern.
von: Marlo
Geschrieben am: 25.09.2019 09:05:53
Hallo Nepumuk,
das sieht super aus. Funktioniert einwandfrei!
Vielen vielen lieben Dank!
Betrifft: Warum dann offen? owt
von: Torsten
Geschrieben am: 25.09.2019 09:09:09
Betrifft: AW: Warum dann offen? owt
von: Marlo
Geschrieben am: 26.09.2019 14:24:44
Ich habe das Häckchen wohl fälschlicherweise gesetzt. Dachte es wäre sowas wie eine Zustimmung zur Verarbeitung :D
Häckchen ist jetzt nicht mehr gesetzt. Sollte also geschlossen sein.
Betrifft: wieder offen
von: Torsten
Geschrieben am: 24.09.2019 15:28:40
Ich nehms zurueck.
Du hast recht. Wenn ich den Code normal durchlaufen lasse, kommt bei mir auch nur ein weisses Feld mit Rand raus.
Vorher hab ichs im Einzelschrittmodus gemacht. Da hats funktioniert. Merkwuerdig.
Wieder offen.
Gruss