Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1908to1912
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

Zelle (Bild) in Abhängigkeit löschen

Zelle (Bild) in Abhängigkeit löschen
13.12.2022 15:04:27
Günther
Guten Tag,
häng mal wieder fest. Ich möchte, wenn ich den Kunden in der DB Zeile 10 lösche, auch die dazugehörige Zelle mit Bildinhalt löschen.
Beispiel: In Zeile 10 der DB (in Excel z.b. Zeile 18) den Inhalt (Bild) in dieser Zeile in Spalte W ebenfalls löschen. Siehe Abschnitt "logo löschen".
Wie bekomme ich das hin?

Sub KundenAnlegen_DBEingabe()
'Kunden.xlsm...Verwaltung der Kundendaten
'Call Eingabe_Unprotect
'Tabelle einlesen
Dim tbl As ListObject
Set tbl = tb_Datenbank.ListObjects(1)
With tb_Eingabeformular
'Spalten leeren
.Columns("D").ClearContents
.Columns("H").ClearContents
.Columns("L").ClearContents
.Columns("P").ClearContents
'Kunden-ID einfügen
.Range("D11").Value = tbl.DataBodyRange(tbl.DataBodyRange.Rows.Count, 1).Value + 1
'Navigieren auf das Eingabefeld
.Shapes.Range(Array("txt_Anlegen", "img_Anlegen")).Visible = True
.Shapes.Range(Array("txt_Bearbeiten", "img_Bearbeiten")).Visible = False
.Select
'logo löschen
Dim picBild As Picture
For Each picBild In ActiveSheet.Pictures
If Not Intersect(picBild.TopLeftCell, Range("O28")) Is Nothing Then picBild.Delete
Next picBild
'Zelle auswählen
.Range("D15").Select
End With
'Call Eingabe_Protect
End Sub

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Unvollständige Erklärung
13.12.2022 16:58:07
Yal
Hallo Günther,
mit dem Code löschst Du ein Bild, falls diese in O28 liegt. Der Auswahl der Kundennummer in letzter Zeile des ListObjects (aka "intelligente Tabelle", und bei dir wohl auch "DB" genannt) ist laut Coding nicht mit dem Rest verbunden.
Wie sieht aus, wenn Du die Zeile 10 (was auch immer das sei) auswählst?
VG
Yal
AW: Unvollständige Erklärung
15.12.2022 10:45:57
Günther
Hallo Yal,
ich bins schon wieder... Du weißt schon.ich bin hier im Forum aktuell ja nochmal vertreten.
Wie schon erwähnt bin ich Laie und versuche mit gerade mit VBA zu befassen. Die Codes sind aus dem Internet kopiert.
Was ja größtenteils auch funktioniert und das meiste kann ich zumindest logisch nachvollziehen. Aber hier z.B. reichen meine Kenntnisse noch nicht aus.
Ich versuche es nochmal mit meinen schmalen Kenntnissen zu erklären.
Ich habe eine Excel Tabelle (Tabellenname="Datenbank") in der Kundendaten als Datenbank abgelegt sind. Mittels Makros kann ich neue Kunden anlegen, bearbeiten und löschen. Das funktioniert auch alles Bestens. Zum Bearbeiten der Kundendatensätze gibt ein Eingabeformular "Eingabe" über welches dann die Änderungen etc. gemacht werden können.
Nun mein Problem.
Mit der Löschfunktion werden alle Felder gelöscht außer ein von mir erstelltes Feld in dem eine Grafik eingefügt ist. Das ist eigentlich leer. Trotzdem ist dort eine Grafik angedockt. Diese Grafik soll ebenfalls, wenn der Kundendatensatz gelöscht wird, mit gelöscht werden.
Ich habe zum hoffentlich besseren Verständnis, mal eine Skizze hochgeladen.
https://www.herber.de/bbs/user/156744.xlsx
Grüße
Günther
Anzeige
AW: Unvollständige Erklärung
15.12.2022 11:10:35
ralf_b
Hallo Günther,
in deinen Bildern sieht es nicht so aus als ob das Shape die TopLeftCell O28 hat. Sieht eher nach Spalte N aus. Topleftcell ist oben Links. lass dir doch mal in einer Schleife alle Topleftcells der Shapes auf dem Blatt ausgeben.

Sub shplisten()
Dim picBild As Object
For Each picBild In ActiveSheet.Shapes
Debug.Print " Name:"; picBild.Name & "'  obenlinks:" & picBild.TopLeftCell.Address(0, 0)
Next picBild
End Sub

AW: Unvollständige Erklärung
16.12.2022 13:58:08
Günther
Hallo,
klappt irgendwie nicht mit dem Forumsbeitrag heute. Egal. Also noch mal.
Als Anlage meine Kundendatei.
https://www.herber.de/bbs/user/156778.xlsm
Im Tabellenblatt "Datenbank" kann ich mittels Icons Kunden anlegen, bearbeiten oder löschen. Bei einem Neukunden muss ich ich das Logo (Spalte W) per Menü/Einfügen/Grafik dort implementiert.
Wenn ich dann einen Kunden via Icon löschen möchte, dann wird dieser auch gelöscht, außer das Logo. Dieses soll natürlich in Abhängigkeit mit der Kunden-ID ebenfalls gelöscht werden. Aber wie? Hie ist mein Problem.
Grüße
Günther
Anzeige
Zelle (Bild) in Abhängigkeit löschen
16.12.2022 14:39:07
Günther
...ist noch offen
AW: Zelle (Bild) in Abhängigkeit löschen
16.12.2022 16:37:14
ralf_b

Dim Antwort
Dim picBild As Picture
If vbYes = MsgBox("Soll der Kunde wirklich gelöscht werden?", vbYesNo + vbQuestion, "Kunde wirklich löschen?") Then
'Feld Logo im Tabellenblatt Datenbank löschen
For Each picBild In ActiveSheet.Pictures
If picBild.TopLeftCell.Row = ActiveCell.Row Then picBild.Delete: Exit For
Next picBild
ActiveCell.EntireRow.Delete
End If

AW: Zelle (Bild) in Abhängigkeit löschen
18.12.2022 13:21:05
Gruibe
Hallo Ralf
super. Danke .
Ich teste mal ...falls der Thread geschlossen wird, dann schon mal vielen Danke und noch einen schönen Sonntag.
Grüße
Gruibe
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige