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

Zellen mit best. Zeichenkette löschen

Zellen mit best. Zeichenkette löschen
13.11.2008 13:52:14
Dagmar
Liebe VBA-Profis,
Möchte in einer "Selection" alle Zeilen löschen in denen 'gesamt' ein Teil des Zellinhaltes ist: also bspw. auch 'Gesamt' oder 'Unfall-Gesamt' oder 'Gesamtes Versicherungsgeschäft'
mit der folgenden Anweisung löscht es mir nur die mit 'Gesamt':

Sub best_Zellen_löschen()
Worksheets("GesamtRoh").Select
Range("A2").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
For Each cell In Selection
If cell.Value = "Gesamt" Then cell.EntireRow.Delete
Next
End Sub


Wer kann mir weiterhelfen?
Vielen Dank bereits vorab!
Dagmar

12
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zellen mit best. Zeichenkette löschen
13.11.2008 13:55:35
JogyB
Hallo.
If InStr(1, cell.value, "Gesamt") <> 0 Then ...
Gruss, Jogy
AW: Zellen mit best. Zeichenkette löschen
13.11.2008 13:57:00
Andi
Hi,
If cell.Value Like "*Gesamt*" then...
Schönen Gruß,
Andi
AW: Zellen mit best. Zeichenkette löschen
13.11.2008 13:59:04
Beverly
Hi Dagmar,

If InStr(cell.Value, "Gesamt") > 0 Then cell.EntireRow.Delete




AW: Zellen mit best. Zeichenkette löschen
13.11.2008 14:43:00
Dagmar
Vielen Dank für die super schnellen Antworten, aber bspw. bei
If InStr(cell.Value, "Gesamt") > 0 Then cell.EntireRow.Delete
löscht der nicht die Fälle: gesamt, gesamtes, Unfall-gesamt
Hat hierfür jemand noch einen Tip?
Anzeige
AW: Zellen mit best. Zeichenkette löschen
13.11.2008 14:49:00
RS
Hi,

If InStr(UCase(cell.Value)), "GESAMT") > 0 Then cell.EntireRow.Delete


Grüsse RS

AW: Zellen mit best. Zeichenkette löschen
13.11.2008 14:53:41
Dagmar
Sorry, aber da bringt er mir eine Fehlermeldung (Erwartet: Listentrennzeichen)
klammer zuviel
13.11.2008 14:55:31
RS

If InStr(UCase(cell.Value), "GESAMT") > 0 Then cell.EntireRow.Delete


AW: klammer zuviel
13.11.2008 15:02:00
Dagmar
Hat jemand noch eine Idee? Keiner der bisherigen Vorschläge deckt alle Varianten ab. Immer bleibt bspw. Gesamt oder gesamtes oder Unfall-Gesamt noch stehen.
Danke für Eure Hilfe
AW: klammer zuviel
13.11.2008 15:39:00
RS
Hi Dagmar,
Bei mir funktioniert:

Sub best_Zellen_löschen()
Dim rC As Range
For Each rC In Worksheets("GesamtRoh").UsedRange
If InStr(UCase(rC.Value), "GESAMT") > 0 Then rC.EntireRow.Delete
Next
End Sub


ohne Probleme...
Grüsse RS

Anzeige
AW: klammer zuviel
13.11.2008 16:07:00
Dagmar
Danke, aber es geht immer noch nicht bei mir. Vermutlich liegt es daran, dass er ein Problem hat, wenn mehrere zu löschenden Zeilen hintereinander kommen also zum Beispiel
1. Zeile Gesamt
2. Zeile gesamt
3. Zeile gesamtes
4. Zeile Gesamte
5. Zeile Unfall-Gesamt
6. Zeile Unfall-Gesamt
7. Zeile Gesamtes Versicherungsgeschäft
Die 2., 4. und 6. Zeile sind danach noch da. Warum?
Danke für Eure Hilfe!
Dagmar
AW: klammer zuviel
13.11.2008 16:37:00
RS
Hi Dagmar,
Dann halt von hinten nach vorne:

Sub best_Zellen_löschen()
Dim rC As Range
Dim lRowX As Long, lColX As Long
Dim lR As Long, lC As Long
With Worksheets("GesamtRoh")
lRowX = .Range(Split(.UsedRange.Address(0, 0), ":")(1)).Row
lColX = .Range(Split(.UsedRange.Address(0, 0), ":")(1)).Column
For lR = lRowX To 2 Step -1
For lC = lColX To 1 Step -1
If InStr(UCase(.Cells(lR, lC).Value), "GESAMT") > 0 Then _
.Rows(lR).EntireRow.Delete
Next lC
Next lR
End With
End Sub


RS

Anzeige
AW: klammer zuviel
13.11.2008 16:48:00
Dagmar
Super! Das war die rettende Idee!!! Vielen Dank. Wünsche noch einen schönen Abend!

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige