Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1844to1848
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

VBA: Bilder in Bereich löschen

VBA: Bilder in Bereich löschen
20.08.2021 10:18:19
Fritz_W
Hallo VBA-Experten,
habe folgenden Code gefunden, mit dem ich im Tabellenblatt "Bilder" (Tabelle4) alle Bilder im Zellbereich H2:H26 löschen kann.
Ich würde jedoch gerne nur die Bilder in den Zellen des angegebenen Zellbereichs löschen, wenn in der Spalte G der jeweiligen Zeile ein "x" steht.
Beispiel: Ein "x" steht in den Zellen G5, G9 und G13. In diesem Fall sollten nur die Bilder in den Zellen H5, H9 und H13 gelöscht werden.
Für eure Unterstützung danke ich im Voraus.
mfg
Fritz
Hier mein bisheriger Code:

Sub BilderLoeschen()
Dim shp As Object
Dim sh As Worksheet
Dim rngBereich As Range
Set sh = Tabelle4   ' ggf. anpassen
Set rngBereich = sh.Range("H2:H26")  ' ggf. anpassen
For Each shp In sh.Shapes
Debug.Print shp.Name
If shp.Type = 13 Then
If Not Intersect(shp.TopLeftCell, rngBereich) Is Nothing Then shp.Delete
End If
Next
End Sub

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

Betreff
Datum
Anwender
Anzeige
AW: VBA: Bilder in Bereich löschen
20.08.2021 11:03:51
Nepumuk
Hallo Fritz,
teste mal:

Sub BilderLoeschen()
Dim shp As Shape
Dim sh As Worksheet
Dim rngBereich As Range
Set sh = Tabelle4   ' ggf. anpassen
Set rngBereich = sh.Range("H2:H26")  ' ggf. anpassen
For Each shp In sh.Shapes
Debug.Print shp.Name
If shp.Type = msoPicture Then
If Not Intersect(shp.TopLeftCell, rngBereich) Is Nothing Then
If sh.Cells(shp.TopLeftCell.Row, 7).Value  "x" Then shp.Delete
End If
End If
Next
End Sub
Gruß
Nepumuk
AW: VBA: Bilder in Bereich löschen
20.08.2021 11:35:21
Fritz_W
Hallo Nepumuk,
Ich habe den Code eben getestet, dabei wurden alle Bilder im relevanten Zellbereich gelöscht, in deren Zeile in der Spalte G kein 'x' stand.
Ich wollte, dass das umgekehrt funktioniert, wenn aber die Anpassung mit großem Aufwand verbunden ist, kann ich auch mit dem jetzigen Makro auskommen,
ich würde dann die Formeln in den Zellen G2:G26 entsprechend anpassen. Dir auf jeden Fall an dieser Stelle noch einmal ein großes Dankeschön.
mfg
Fritz
Anzeige
AW: VBA: Bilder in Bereich löschen
20.08.2021 11:37:34
UweD
Hallo
ungetestet.
aus

If sh.Cells(shp.TopLeftCell.Row, 7).Value  "x" Then shp.Delete
mache

If sh.Cells(shp.TopLeftCell.Row, 7).Value = "x" Then shp.Delete
LG UweD
AW: VBA: Bilder in Bereich löschen
20.08.2021 11:42:02
Fritz_W
Hallo Uwe,
vielen Dank, so funktioniert es.
Habe den Nepumuks Code eben doch etwas genauer angeschaut, was ich besser gleich getan habe und eben diese Umstellung bereits vorgenommen.
Ihr Beiden habt mir sehr geholfen.
mfg
Fritz

311 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige