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

Forumthread: Zeile löschen VBA

Zeile löschen VBA
10.12.2019 14:59:16
Steve
Moin Leute,
ich habe ein wenig rumprobiert und eine Grundsätzliche Lösung gefunden. Aber die ist wirklich sehr unschön.
Kann mir jemand sagen wie ich hier weitermachen muss?
Zum Problem. Ich habe eine dynamische Tabelle. Diese hat in der Spalte B den definierten Namen "Ziel"
Ich kann per Dropdown in F1 einen Eintrag auswählen. Per Button wird diese Zeile dann gelöscht.
ABER das ganze sieht sehr unschön aus weil das Dropdownfeld nur in Spalte 1 sein kann. Andernfalls laufe ich Gefahr dieses mitzulöschen wenn ich die entsprechende Zeile lösche.
Also habe ich mir dasselbe mal als Formularsteuerelement angeschaut aber dann erscheint in der Zielzelle die Nummer der Zeilenposition. Ausserdem kann ich da nicht den definierten Namen verwenden.
Dann habe ich mir mal das ActiveX Dropdownfeld angeschaut. Aber irgendwie schaffe ich nicht mal das die Werte zur Auswahl stehen.
Hat da jemand einen Tipp für mich wo ich sowas nachlesen kann?
Kurz zum Ziel das ich erreichen möchte.
Mit dem Dropdown soll ein Eintrag ausgesucht werden. Mit dem Button "löschen" soll der Eintrag bzw. die ganze Zeile gelöscht werden.
Im besten Fall wird das Dropdown im Anschluss geleert und natürlich soll nichts passieren wenn nichts ausgewählt wurde aber trotzdem der Löschenbutton benutzt wird.
Ich hänge mal meine bisherigen Ergebnisse mit an:
https://www.herber.de/bbs/user/133706.xlsm
Liebe Grüße
Steve
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Zeile löschen VBA
10.12.2019 16:46:27
Beverly
Hi Steve,
weise der ComboBox unter den Eigenschaften B2:B7 als ListFillRange und F1 als LinkedCell zu. Dann kannst du mit folgendem Code die betreffende Zeile löschen:
Sub LÖSCHENTEST()
Dim rngSuche As Range
Set rngSuche = ActiveSheet.ListObjects(1).DataBodyRange.Columns(2).Find(Range("F1"), _
lookat:=xlWhole)
If Not rngSuche Is Nothing Then
rngSuche.EntireRow.Delete
Range("F1") = ""
End If
End Sub

Den Code im Codemodul des Tabellenblattes musst du noch löschen und den definierten Namen "Ziel" bnötigst du nicht, denn dadurch dass du die formatierte/intelligente Tabelle verwendest, wird der Bereich der ComboBox automatisch angepasst.


Anzeige
AW: Zeile löschen VBA
11.12.2019 10:14:53
Steve
Hallo Beverly,
danke. Das hat mir sehr geholfen. Klappt hervorragend.
Liebe Grüße
Steve
;

Forumthreads zu verwandten Themen

Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

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