Live-Forum - Die aktuellen Beiträge
Datum
Titel
17.10.2025 10:28:49
16.10.2025 17:40:39
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Bilder per VBA einzeln löschen

Forumthread: Bilder per VBA einzeln löschen

Bilder per VBA einzeln löschen
touchmarul
Hallo Excel-Gemeinde !
Ich stehe vor folgendem Problem:
Ich habe eine Tabelle in der in jeder Zeile ein Bild ist (immer gleiche Spalte). Die Bilder sind mit der Zelle verknüpft (.Placement = XlMove)
Wenn ich jetzt die Zeile markiere und komplett lösche, bleibt das Bild und wird nicht mit gelöscht, sondern vom Bild der nächsten Zeile überdeckt.
Habt Ihr einen Tip, was man da machen kann ? Wie bekomme ich auch das Bild gelöscht ?
Evtl Zeilen über Makro löschen ?
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Bilder per VBA einzeln löschen
29.06.2010 13:41:25
Rudi
Hallo,
lösch doch erst das Bild und dann die Zeile.
Gruß
Rudi
AW: Bilder per VBA einzeln löschen
29.06.2010 13:46:06
touchmarul
Hallo Rudi !
So mach ich's auch bislang. Die Tabelle ist aber auch für User, die Excel nur so lala bedienen können....und da wollte ich es halt möglichst Nutzerfreundlich machen.
AW: Bilder per VBA einzeln löschen
29.06.2010 14:02:14
fcs
Hallo touchmarul,
Es gibt zwar eine Option mit der man das Kopieren/ausschneiden von Objekten/Zellen einstellen kann, aber keine zum Löschen.
Hier gilt dann: erst Bilder/Objekte löschen, dann die Zellen.
Per Makro sieht das wie folgt aus. Das Makro prüft hier die linke obere Zelle der Objekte. Wenn diese innerhalb der Zeile liegt wird das Obekt gelöscht.
Gruß
Franz
Sub Loeschen_Shapes_mit_Zeile()
Dim oShape As Shape
If MsgBox("Bilder und andere Objekte zusammen mit aktiver Zeile löschen?", _
vbQuestion + vbYesNo, "Zeilen mit Objekten löschen") = vbYes Then
For Each oShape In ActiveSheet.Shapes
If Not Intersect(oShape.TopLeftCell, ActiveCell.EntireRow) Is Nothing Then
oShape.Delete
End If
Next
ActiveCell.EntireRow.Delete
End If
End Sub

Anzeige
AW: Bilder per VBA einzeln löschen
29.06.2010 14:25:26
touchmarul
Hallo Franz !
Genial ! funktioniert perfekt ! Vielen Dank für die schnelle Hilfe !
;
Anzeige
Anzeige

Infobox / Tutorial

Bilder in Excel per VBA löschen


Schritt-für-Schritt-Anleitung

Um alle Bilder oder Grafiken aus Excel zu entfernen, kannst Du ein VBA-Makro verwenden. Folge diesen Schritten:

  1. Öffne Deine Excel-Datei und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Klicke im Menü auf Einfügen und wähle Modul, um ein neues Modul zu erstellen.

  3. Kopiere den folgenden VBA-Code in das Modul:

    Sub Loeschen_Shapes_mit_Zeile()
       Dim oShape As Shape
       If MsgBox("Bilder und andere Objekte zusammen mit aktiver Zeile löschen?", _
       vbQuestion + vbYesNo, "Zeilen mit Objekten löschen") = vbYes Then
           For Each oShape In ActiveSheet.Shapes
               If Not Intersect(oShape.TopLeftCell, ActiveCell.EntireRow) Is Nothing Then
                   oShape.Delete
               End If
           Next
           ActiveCell.EntireRow.Delete
       End If
    End Sub
  4. Schließe den VBA-Editor und gehe zurück zu Excel.

  5. Wähle eine beliebige Zeile aus, die Bilder enthält, und führe das Makro aus über Entwicklertools > Makros > Loeschen_Shapes_mit_Zeile und klicke auf Ausführen.

Dieses Makro entfernt die Bilder aus der Zeile, die Du ausgewählt hast, und löscht die gesamte Zeile.


Häufige Fehler und Lösungen

  • Problem: Das Bild wird nicht gelöscht, wenn ich die Zeile auswähle.
    Lösung: Stelle sicher, dass Du die Zelle in der Zeile auswählst, in der sich das Bild befindet. Das Makro funktioniert nur auf der aktiven Zeile.

  • Problem: Fehlermeldung beim Ausführen des Makros.
    Lösung: Überprüfe, ob Du in der richtigen Excel-Version arbeitest. Das Makro sollte in den meisten Versionen von Excel funktionieren, aber es ist immer gut, sicherzustellen, dass keine anderen Add-Ins oder Makros stören.


Alternative Methoden

Falls Du kein VBA verwenden möchtest, kannst Du auch manuell Bilder in Excel löschen:

  1. Klicke auf das Bild, das Du entfernen möchtest.
  2. Drücke die Entf-Taste auf Deiner Tastatur.
  3. Wiederhole diesen Vorgang für jedes Bild, das Du entfernen möchtest.

Diese Methode ist jedoch zeitaufwendig, wenn Du viele Bilder hast.


Praktische Beispiele

Angenommen, Du hast eine Excel-Tabelle mit mehreren Bildern in jedem Datensatz. Mit dem oben genannten Makro kannst Du alle Grafiken in der aktuell ausgewählten Zeile schnell löschen. Dies ist besonders nützlich, wenn Du Daten bereinigen oder aktualisieren möchtest, ohne manuell jedes Bild zu entfernen.


Tipps für Profis

  • Automatisierung: Du kannst das Makro so anpassen, dass es automatisch alle Bilder in einem bestimmten Bereich oder auf einem gesamten Arbeitsblatt löscht.
  • Backup: Erstelle immer ein Backup Deiner Excel-Datei, bevor Du Makros ausführst, um Datenverlust zu vermeiden.
  • Dokumentation: Kommentiere Deinen VBA-Code, damit Du oder andere Benutzer in der Zukunft die Funktionsweise des Codes besser nachvollziehen können.

FAQ: Häufige Fragen

1. Wie kann ich alle Bilder auf einem Arbeitsblatt löschen?
Du kannst das folgende Makro verwenden, um alle Bilder im aktiven Arbeitsblatt zu entfernen:

Sub Alle_Bilder_Loeschen()
    Dim oShape As Shape
    For Each oShape In ActiveSheet.Shapes
        oShape.Delete
    Next
End Sub

2. Funktioniert das Makro in Excel Online?
Nein, VBA-Makros sind in Excel Online nicht verfügbar. Du musst die Desktop-Version von Excel verwenden, um das Makro auszuführen.

3. Was passiert, wenn ich ein Bild versehentlich lösche?
Du kannst die Rückgängig-Funktion (Strg + Z) verwenden, um die letzte Aktion rückgängig zu machen und das Bild wiederherzustellen.

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