Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Bild von Zwischenablage direkt in File speichern

Bild von Zwischenablage direkt in File speichern
15.02.2005 20:20:34
Zwischenablage
Hallo zusammen
Wie kann ich mit VBA ein Bild (z.B Screenshot), welches sich in der Zwischenablage befindet, in eine Datei abspeichern?
Bin dankbar für jeden Tipp
Gruss Stefan B
Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Bild von Zwischenablage direkt in File speichern
15.02.2005 20:40:09
Zwischenablage
Hallo Stefan,
wie wird man eigentlich VBA-Profi?


Option Explicit
Sub Bild_exportieren()
    Dim myChartObject As ChartObject, myShape As Shape
    Dim bolfound As Boolean
    Application.ScreenUpdating = False
    Worksheets.Add
    ActiveSheet.Paste
    For Each myShape In ActiveSheet.Shapes
        If myShape.Type = msoPicture Then bolfound = TrueExit For
    Next
    If bolfound Then
        myShape.CopyPicture Appearance:=2, Format:=-4147
        Set myChartObject = ActiveSheet.ChartObjects.Add(0, 0, myShape.Width, myShape.Height)
        With myChartObject
            .Activate
            .Chart.Paste
            .Chart.Export Filename:=ActiveWorkbook.Path & "\zwischenablage.jpg", FilterName:="JPG", Interactive:=False
        End With
        Set myChartObject = Nothing
        Set myShape = Nothing
    End If
    With Application
        .DisplayAlerts = False
        ActiveSheet.Delete
        .DisplayAlerts = True
        .ScreenUpdating = True
    End With
End Sub


Gruß
Nepumuk (ein Amateur)
Anzeige
AW: Bild von Zwischenablage direkt in File speichern
Zwischenablage
Hi,
wärs nicht sinnvoll abzufragen, ob die Datei schon mal gespeichert ist?
Wo landet das Bild, wenn das aktive Workbook noch keinen Path hat?
Ulf
AW: Bild von Zwischenablage direkt in File speichern
15.02.2005 21:59:17
Zwischenablage
Hallo Ulf,
1. Ein eventuel vorhandenes Bild wird gnadenlos überschrieben.
2. Auf dem Laufwerk welches in Curdir angegeben ist.
3. Stefan ist "VBA-Profi", wenigstens das wird er wohl noch auf die Reihe bringen.
Gruß
Nepumuk
Anzeige
AW: Bild von Zwischenablage direkt in File speichern
Zwischenablage
Hi,
hab ich nicht gesehen, dass er Profi ist.
Ulf
AW: Bild von Zwischenablage direkt in File speichern
16.02.2005 08:29:50
Zwischenablage
Thanks, thanks, thanks
Danke vielmals, Leute, für die prompte Hilfe. Ihr könnt euch nicht vorstellen, wie lange ich schon nach einer Lösung suche. Your're so great!!!
Gruss Stefan
AW: Bild von Zwischenablage direkt in File speichern
16.02.2005 08:32:46
Zwischenablage
Ich hab mich wohl ein wenig überschätzt. Ich nenne mich mal lieber "Amateur"
greets
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Bild von Zwischenablage direkt in Datei speichern


Schritt-für-Schritt-Anleitung

Um ein Bild aus der Zwischenablage in einer Datei zu speichern, kannst Du ein VBA-Skript verwenden. Hier ist eine einfache Schritt-für-Schritt-Anleitung:

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu starten.

  2. Füge ein neues Modul hinzu: Klicke mit der rechten Maustaste auf „VBAProject (DeinWorkbook)“ und wähle „Einfügen“ > „Modul“.

  3. Kopiere den folgenden Code in das Modul:

    Option Explicit
    
    Sub Bild_exportieren()
       Dim myChartObject As ChartObject, myShape As Shape
       Dim bolfound As Boolean
       Application.ScreenUpdating = False
       Worksheets.Add
       ActiveSheet.Paste
       For Each myShape In ActiveSheet.Shapes
           If myShape.Type = msoPicture Then bolfound = True: Exit For
       Next
       If bolfound Then
           myShape.CopyPicture Appearance:=2, Format:=-4147
           Set myChartObject = ActiveSheet.ChartObjects.Add(0, 0, myShape.Width, myShape.Height)
           With myChartObject
               .Activate
               .Chart.Paste
               .Chart.Export Filename:=ActiveWorkbook.Path & "\zwischenablage.jpg", FilterName:="JPG", Interactive:=False
           End With
           Set myChartObject = Nothing
           Set myShape = Nothing
       End If
       With Application
           .DisplayAlerts = False
           ActiveSheet.Delete
           .DisplayAlerts = True
           .ScreenUpdating = True
       End With
    End Sub
  4. Schließe den VBA-Editor und gehe zurück zu Excel.

  5. Führe das Makro aus: Drücke ALT + F8, wähle „Bild_exportieren“ und klicke auf „Ausführen“.

Mit diesem Skript kannst Du ein Bild aus der Zwischenablage als JPG speichern. Es wird im gleichen Verzeichnis wie Dein aktuelles Workbook gespeichert.


Häufige Fehler und Lösungen

  • Fehler: Bild wird nicht gespeichert

    • Stelle sicher, dass Du ein Bild in der Zwischenablage hast. Du kannst ein Screenshot machen und ihn in die Zwischenablage speichern, bevor Du das Makro ausführst.
  • Fehler: Kein Pfad gefunden

    • Wenn das aktive Workbook keinen gespeicherten Pfad hat, wird das Bild möglicherweise nicht gespeichert. Achte darauf, dass Du das Workbook vorher speicherst.

Alternative Methoden

Wenn Du kein VBA verwenden möchtest, kannst Du auch die folgenden Methoden ausprobieren:

  • Screenshot-Tool verwenden: Nutze ein Screenshot-Tool, um das Bild direkt zu speichern.
  • Bildbearbeitungssoftware: Füge das Bild in ein Programm wie Paint ein und speichere es von dort als JPG.

Praktische Beispiele

Hier sind einige Szenarien, in denen Du ein Bild aus der Zwischenablage speichern könntest:

  1. Screenshot von einer Präsentation: Mach einen Screenshot während einer Präsentation, füge ihn in die Zwischenablage ein und speichere ihn als JPG, um ihn in einer späteren Präsentation zu verwenden.
  2. Grafiken aus Excel: Erstelle Grafiken in Excel und speichere diese direkt als Bilder zur Verwendung in Berichten oder auf Webseiten.

Tipps für Profis

  • Automatisierung: Du kannst das VBA-Skript erweitern, um automatisch zu prüfen, ob eine Datei mit dem gleichen Namen bereits existiert, um Überschreibungen zu vermeiden.
  • Batch-Verarbeitung: Wenn Du mehrere Bilder speichern möchtest, kannst Du das Skript so anpassen, dass es eine Schleife durchführt, um mehrere Bilder nacheinander zu speichern.

FAQ: Häufige Fragen

1. Wie kann ich das Bild in einem anderen Format speichern?
Du kannst das Format in der Zeile .Chart.Export ändern, indem Du den FilterName entsprechend anpasst (z.B. "PNG" für PNG-Dateien).

2. Funktioniert das auch in Excel Online?
Leider ist VBA nicht in Excel Online verfügbar. Du kannst diese Methode nur in der Desktop-Version von Excel verwenden.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige