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

Forumthread: Alle Objekte in einem Bereich löschen

Alle Objekte in einem Bereich löschen
29.10.2007 19:45:11
Jürgen
Hallo Forum,
mit nachfolgendem Makro kann ich ja alle Objekte einer Seite löschen.

Sub KillShapes1()
Dim shp As Shape
For Each shp In ActiveSheet.Shapes
shp.Delete
Next shp
End Sub


Ich möchte aber nur die Objekte (Bilder, Kreise, Rechtecke, Linien) innerhalb eines bestimmten Bereiches ("a7:AO44") löschen.
Über If/Then und Ausschluß der nicht zu löschenden bin ich nicht weitergekommen.
Kann man das Löschen auch für einen bestimmten Bereich auslegen?
Gruß
Jürgen

Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Alle Objekte in einem Bereich löschen
29.10.2007 20:06:00
{Boris}
Hi Jürgen,
Option Explicit

Sub til()
Dim Sh As Shape
Dim Rng As Range
Set Rng = Range("A7:AO44")
For Each Sh In Tabelle1.Shapes
If Not Intersect(Sh.TopLeftCell, Rng) Is Nothing Then Sh.Delete
Next Sh
End Sub


Grüße Boris

Anzeige
AW: Alle Objekte in einem Bereich löschen
29.10.2007 20:18:00
Jürgen
Hallo Boris,
klappt prima.
Danke für die schnelle Hilfe.
Gruß
Jürgen
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Alle Objekte in einem bestimmten Bereich löschen


Schritt-für-Schritt-Anleitung

Um alle Objekte in einem bestimmten Bereich in Excel zu löschen, kannst du ein VBA-Makro verwenden. Folge diesen Schritten:

  1. Öffne Excel 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. Füge den folgenden Code in das Modul ein:

    Sub til()
       Dim Sh As Shape
       Dim Rng As Range
       Set Rng = Range("A7:AO44") ' Definiere den Bereich, in dem Objekte gelöscht werden sollen
       For Each Sh In ActiveSheet.Shapes
           If Not Intersect(Sh.TopLeftCell, Rng) Is Nothing Then
               Sh.Delete ' Löscht das Objekt, wenn es im definierten Bereich ist
           End If
       Next Sh
    End Sub
  4. Schließe den VBA-Editor und gehe zurück zu Excel.

  5. Drücke ALT + F8, wähle das Makro til aus und klicke auf Ausführen.

Damit werden alle Objekte (wie Bilder, Formen und Grafiken) im Bereich A7:AO44 gelöscht.


Häufige Fehler und Lösungen

  • Fehler: "Laufzeitfehler 1004: Anwendung oder Objekt definierte Fehler"

    • Lösung: Überprüfe, ob der angegebene Bereich korrekt definiert ist und existiert.
  • Fehler: Objekte werden nicht gelöscht.

    • Lösung: Stelle sicher, dass die Objekte tatsächlich im angegebenen Bereich liegen und dass du das richtige Arbeitsblatt auswählst.

Alternative Methoden

Falls du kein VBA nutzen möchtest, kannst du auch manuell vorgehen:

  1. Alle Bilder auswählen:

    • Halte die STRG-Taste gedrückt und klicke auf jedes Bild, um mehrere Bilder in Excel zu markieren.
  2. Alle Objekte löschen:

    • Drücke die Entf-Taste, um die markierten Objekte zu löschen.

Für das Löschen aller Grafiken und Formen kannst du das Menü Start nutzen und unter Suchen und Auswählen die Option Objekte auswählen wählen.


Praktische Beispiele

Beispiel 1: Alle Bilder in einem Bereich löschen

Wenn du alle Bilder im Bereich A1:B10 löschen möchtest, passe den Code wie folgt an:

Set Rng = Range("A1:B10")

Beispiel 2: Alle Formen in einem Bereich löschen

Um alle Formen zu entfernen, kannst du den gleichen Code verwenden, da Shapes sowohl Bilder als auch Formen umfassen.


Tipps für Profis

  • Du kannst die Funktion Application.ScreenUpdating verwenden, um die Bildschirmaktualisierung während des Makros zu deaktivieren, was die Ausführung beschleunigt:

    Application.ScreenUpdating = False
    ' Dein Code hier
    Application.ScreenUpdating = True
  • Wenn du alle Grafiken oder Formen in einem bestimmten Bereich markieren und löschen möchtest, kannst du das Makro anpassen, um zuerst die Objekte zu markieren und dann zu löschen.


FAQ: Häufige Fragen

1. Wie kann ich alle Bilder in Excel löschen? Um alle Bilder in Excel zu löschen, kannst du das Makro KillShapes1 verwenden, welches alle Shapes auf dem aktiven Blatt entfernt.

2. Kann ich das Löschen von Objekten rückgängig machen? Ja, du kannst die Rückgängig-Funktion in Excel verwenden, um das Löschen rückgängig zu machen, solange du das Arbeitsblatt nicht gespeichert hast.

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