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

Lösch-Makro

Lösch-Makro
25.02.2004 10:08:08
Phil
Hallo!
Ich soll ein Makro schreiben, welches die Zeile, in der in der ersten Spalte "Error" steht, löscht. Zusätzlich sollen die jeweilis oben drüber liegenden Zeilen gelöscht werden. Am Ende der Tabelle gibts ne Zeile in der auch "Error" steht. Diese sowie die Zeile darüber sollen nicht gelöscht werden. Anmerkung: Die länge dieser Tabelle ist variabel!
Danke für eure Hilfe!
Da ich in nächster Zeit öfters mit Makros konfrontiert werde, spiele ich mit dem Gedanken mir ein Buch zum Thema zuzulegen. Wäre nett, wenn ihr mir hierfür ein paar Anregungen im unteren Preissegment :) geben könntet!
MfG
Phil

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Buch VBA
25.02.2004 10:10:48
Jan P
Hallo,
es gibt ein Buch von Markt&Technik VBA mit Excel.
Kostet Euro 24,95 ISBN: 3-8272-6586-x.
Start ohne Vorwissen für Anfänger.
MfG Jan P
AW: Lösch-Makro
25.02.2004 10:29:01
Mac4
Hallo Phil,
das heißt doch dann eigentlich:
Suche von unten den zweiten Eintrag mit "Error" und lösche ab da bis zum Tabellenanfang, oder?
Wenn ja, dann wäre das eine Möglichkeit:

Sub test1()
For i = Cells(Rows.Count, 1).End(xlUp).Row - 1 To 1 Step -1
If Cells(i, 1).Value = "Error" Then
Range(Cells(1, 1), Cells(i, 1)).EntireRow.Delete shift:=xlUp
Exit For
End If
Next
End Sub

Marc
Anzeige
AW: Lösch-Makro
25.02.2004 10:40:57
Phil
Hallo Mark,
jepp, das Makro soll alle Zeilen, in denen "Error" steht + die Zeile darüber löschen. Ausgenommen die erste von unten. Das Makro das du mir geschickt hast funktioniert bei mir nich.. Ich nehm aber an, dass das an mir liegt *g*
MfG
Phil
AW: Lösch-Makro
25.02.2004 10:54:47
Mac4
Hi Phil,
schreib das Makro direkt in das Tabellenmodul. Dann muß er laufen!
Marc
AW: Lösch-Makro
25.02.2004 10:58:01
Phil
Hallöchen :)
Das macht er nu auch, nur löscht er alles ab dem zweiten Error von unten.. er soll aber nur jeweils die Zeile in der das steht + die darüber löschen..
MfG
Phil
AW: Lösch-Makro
25.02.2004 11:05:05
Mac4
Dann so:

Sub test1()
For i = Cells(Rows.Count, 1).End(xlUp).Row - 1 To 1 Step -1
If Cells(i, 1).Value = "Error" Then
Range(Cells(i - 1, 1), Cells(i, 1)).EntireRow.Delete shift:=xlUp
End If
Next
End Sub

Marc
Anzeige
AW: Lösch-Makro
25.02.2004 11:10:41
Phil
Ein herzliches Dankeschön! Es funktioniert bestens :)
Könntest du vielleicht noch kurz erklären, was die einzelnen Befehle zu bedeuten haben?
Hast mir sehr geholfen!
MfG
Phil
AW: Lösch-Makro
25.02.2004 11:28:03
Mac4
Hi,
Cells(Rows.Count, 1).End(xlUp).Row liefert die Zeilennummer der letzten gefüllten Zelle in Spalte A.
For i = Cells(Rows.Count, 1).End(xlUp).Row - 1 To 1 Step -1 bedeutet somit eine Schleife von i = Zeilennummer der letzten gefüllten Spalte bis 1. Step -1 deswegen, weil Löschvorgänge in Schleifen immer von hinten begonnen werden sollen!
Leider fehlt mir die Zeit für ausführlichere Erklärungen - laß das Makro im VBA-Explorer mal mit F8 Schritt für Schritt durchlaufen und sieh Dir hierbei die Veränderungen der Variabelen i an (mit Maus draufzeigen), dann wird es sicherlich klarer!
Marc
Anzeige
AW: Lösch-Makro
25.02.2004 12:19:37
Phil
Schöne Erklärung! Hilft mir sicherlich weiter!
Dankeschön!
MfG
Phil

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige