Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
480to484
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
480to484
480to484
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Löschen von Zeilen

Löschen von Zeilen
12.09.2004 09:44:05
Zeilen
Hallo EXCEL-Freunde,
ich suche eine VBA-Lösung für folgendes Problem:
In nachstehender Tabelle 2 sollen alle Zeilen gelöscht werden, deren Nr. der Spalte A in Tabelle 1 in der Spalte B mit erledigt gekennzeichnet ist. Die Zahlen sind nicht in irgendeiner Form sortiert.
Besten Dank für eine Hilfe!

Tabelle1
 AB
1NrStatus
21234neu
32345erledigt
44567neu
56789erledigt
 
Tabelle2
 AB
1Nr 
26789löschen ?
32345 
44567 
51234 
66750 
72345löschen ?
85430 
 
Diagramm - Grafik - Excel Tabellen einfach im Web darstellen    Excel Jeanie HTML  3.0    Download  
mfg
Erich

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Löschen von Zeilen
Zeilen
Hallo Erich,
so z.B.:
diesen Code mußt du in die Selection_Change-Eigenschaft des Tabellenblattes im VBA-Editor zuweisen:
Private Sub Worksheet_SelectionChange(ByVal Target As Range) Dim Zeile As Integer, Zeile1 As Integer, i As Integer Zeile1 = 2 i = 2 While Sheets(1).Cells(i, 1) <> "" i = i + 1 Wend For Zeile = 2 To i If Cells(Zeile, 2) = "erledigt" Then Sheets(1).Range(Cells(Zeile, 1), Cells(Zeile, 2)).Delete shift:=xlUp: Exit Sub End If Next Zeile End Sub
Grüße
Mike
AW: Löschen von Zeilen
Zeilen
Hallo Mike,
leider läuft der Code nicht durch; zudem wäre die Frage in welcher Tabelle.
Code von Annett ist aber super.
mfg
Erich
Anzeige
AW: Löschen von Zeilen
Zeilen
Probiere mal das:
Sub ZeileLöschen() Dim intZeile As Integer, intI As Integer intZeile = Sheets("Tabelle1").Cells(Rows.Count, 2).End(xlUp).Row For intI = intZeile To 1 Step -1 If Sheets("Tabelle1").Cells(intI, 2).Value = "erledigt" Then Rows(intI).Delete Next intI End Sub
AW: Löschen von Zeilen
Zeilen
Hallo Peter,
besten Dank - leider löscht der code aber die gleiche Zeile in der Tabelle - darf
aber nicht sein.
Code von Annett läuft aber.
mfg
Erich
AW: Löschen von Zeilen
Zeilen
Du hast Recht, ich habe die Aufgabenstellung nicht richtig gelesen.
AW: Löschen von Zeilen
12.09.2004 10:27:02
Zeilen
Hallo Erich,

Sub Zeilen_loeschen()
Dim I As Long
Dim J As Long
Dim Letzte1 As Long
Dim Letzte2 As Long
Letzte1 = 65536
With Worksheets("Tabelle1")
If .Range("A65536") = "" Then Letzte1 = .Range("A65536").End(xlUp).Row
End With
Letzte2 = 65536
With Worksheets("Tabelle2")
If .Range("A65536") = "" Then Letzte2 = .Range("A65536").End(xlUp).Row
End With
For I = Letzte1 To 1 Step -1
For J = 1 To Letzte2
If Worksheets("Tabelle1").Cells(I, 1) = Worksheets("Tabelle2").Cells(J, 1) And _
Worksheets("Tabelle1").Cells(I, 2) = "erledigt" Then
Worksheets("Tabelle2").Rows(J).Delete
End If
Next J
Next I
End Sub

Gruß Annett
Anzeige
AW: Löschen von Zeilen
Zeilen
Hallo Annett,
Volltreffer! War genau das was ich gesucht habe.
Allerdings habe ich in meinen Tabellen das Problem der doppelten Nrn. entdeckt.
Erste Teillösung:
iRowL = Cells(Cells.Rows.Count, 1).End(xlUp).Row
For iRow = iRowL To 1 Step -1
If WorksheetFunction.CountIf(Columns(1), Cells(iRow, 1)) &gt 1 Then
MsgBox "Problem, es bestehen doppelte Nummern in Spalte A"
Exit Sub
End If
Next iRow
Damit kann ich den Vorgang abfangen, damit bei doppelten Nrn. keine falschen Löschungen
stattfinden.
Mein Problem jetzt:
Dieser Vorgang bezieht sich auf die aktivierte Tabelle - leider schaffe ich es nicht,
den Code so zu steuern, dass er
- zuerst die Tabelle 1, Spalte A
- dann die Tabelle 2, Spalte A
durchsucht undnur dann der Löschvorgang ausgeführt wird, wenn in den jeweiligen
Spalten keine Doppelten sind.
(Hast da sicher eine Idee)
Als Komfortlösung wäre dann die Anzeige der betroffenen Zeilen in der MsgBox mit den
Doppelten; da habe ich aber bestimmt was in meinem Fundus (von herber) und kann das
ergänzen.
Besten Dank nochmal.
mfg
Erich
Anzeige
AW: Löschen von Zeilen
12.09.2004 15:30:38
Zeilen
Hallo Erich,
kannst Du das Problem genauer erklären, vielleicht mit Beispieldatei. Ich habe den Code ohne Beispieldatei erstellt und habe jetzt keine Lust Extra eine zu erstellen. Wobei mir Dein Problem auch nicht ganz klar ist.
Gruß Annett
AW: Löschen von Zeilen
Zeilen
Hallo Annett,
mittlerweile habe ich eine Lösung gefunden, ohne zu wissen ob die optimal ist:
https://www.herber.de/bbs/user/10810.xls
mfg
Erich
Anzeige
AW: Löschen von Zeilen
12.09.2004 17:19:26
Zeilen
Hallo Erich,
Activate und Select ist zu 99% in VBA nicht notwendig.
Gruß Annett
Danke - Annett; o.T. (vergess ich immer wieder)
Erich
.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige