Live-Forum - Die aktuellen Beiträge
Datum
Titel
18.04.2024 18:04:29
18.04.2024 16:33:24
Anzeige
Archiv - Navigation
880to884
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
880to884
880to884
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Zeile(n) löschen

Zeile(n) löschen
29.06.2007 13:54:24
Günter
Hallo,
kann mir jemand sagen, was in anhängenden Makro geändert werden muss,
damit erst ab Zeile 2 gesucht/gefunden und gelöscht wird.
M.f.G.
Günter
Dim c As Range
Dim bereich As Range
'bereich mit beschriebenen zellen finden
Sheets(1).Select
ActiveSheet.UsedRange.Select
reihe = ActiveSheet.UsedRange.Rows.Count
spalte = ActiveSheet.UsedRange.Columns.Count
ActiveCell.Offset(1, 1).Select
ActiveCell.Offset(-1, -1).Select
If ActiveCell.Address "a1" Then
Range(Selection, Selection.End(xlUp)).Select
Range(Selection, Selection.End(xlToLeft)).Select
End If
reihe = reihe + Selection.Rows.Count - 1
spalte = spalte + Selection.Columns.Count - 1
Range("a1").Select
' löschzeilenwert festlegen
eingabe = InputBox("Was finden & löschen?")
'durchsuchen & löschen
Set bereich = Sheets(1).UsedRange
For Each c In bereich
If c = eingabe Then
MsgBox "gefunden in: reihe" & reihe & " spalte" & spalte & vbCr & "Zeile wird gelöscht"
reihe = c.Row
spalte = c.Column
Rows(reihe).Delete
End If
Next c
End Sub

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zeile(n) löschen
29.06.2007 14:06:00
Hajo_Zi
Hallo Güntr,
so ganz klar ist mir nicht was Du mit Deinem Umfangeichen Code machen wolltest. Ich habe mal versuch das zu übersetzen.
Option Explicit

Sub Guenter()
Dim Eingabe As String
Dim C As Range
Eingabe = InputBox("Was finden & löschen?")
'durchsuchen & löschen
For Each C In Sheets(1).UsedRange
If C = Eingabe And C.Row > 2 Then
MsgBox "gefunden in: reihe" & C.Row & " spalte" & C.Column & vbCr & "Zeile wird gelö _
scht"
Rows(C.Row).Delete
End If
Next C
End Sub



Anzeige
AW: Zeile(n) löschen
29.06.2007 14:17:00
Matthias
Hallo Hajo,
das Löschen einer Zeile in einer Schleife "von oben nach unten" übersieht aber untereinanderstehende Suchergebnisse (z.B. Suchwert in Zeile 5 und 6).
Gruß Matthias

AW: Zeile(n) löschen
29.06.2007 14:21:00
Hajo_Zi
Hallo Matthias,
so intesiv hatte ich dies nicht getestet. Ich hatte vermutet duch .UsedRange wäre das Problem gelöst. Aber man lernt nie aus. Danke für den Tip.
Gruß Hajo

AW: Zeile(n) löschen
29.06.2007 14:15:25
Matthias
Hallo Günter,
ein wenig bereinigt, ohne in Zeile 1 zu suchen:

Sub tt()
Dim z As Range, bereich As Range, Eingabe
Eingabe = InputBox("Was finden & löschen?")
With Sheets(1)
Do
Set bereich = Intersect(.UsedRange, .Rows("2:" & Rows.Count))
Set z = bereich.Find(what:=Eingabe, Lookat:=xlWhole)
If Not z Is Nothing Then
z.Select 'zum anzeigen, kann auch weggelassen werden
MsgBox "'" & Eingabe & "' gefunden in: Reihe " & z.Row & ", Spalte " & z.Column & vbCr & _
"Zeile wird gelöscht!"
z.EntireRow.Delete
End If
Loop Until z Is Nothing
End With
MsgBox "Fertig!"
End Sub


Gruß Matthias

Anzeige
AW: Zeile(n) löschen
29.06.2007 15:19:00
Günter
Vielen Dank an alle!!!!
Günter

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige