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

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

309 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige