Jo iss klar,...
16.12.2014 10:45:37
Matze
Hallo Albin,
du solltest dir angewöhnen mit Option Explicit zu arbeiten.
Dies gehört über den Code in die erste Zeile.
Gut deine Erweiterung ist nix anderes wie harys Zeilen, ausser das du Trim Funktion dazu geholt hast.
Auch dein Code sollte nicht mehrfach ausgeführt werden, teste es mal selbst, spätesten der 3te Versuch gibt dir Ernüchterung.
Hab eine Prüfung der ersten Zelle auf "Start" mit eingebaut:
Option Explicit
Sub StartEnde()
Dim rngLast As Long
Dim rngFirst As Long
Dim letzte As Long
Dim i As Variant
Application.ScreenUpdating = False
'Wenn Start in der ersten Zelle steht dann Makro verlassen
If Range("a1").Value = "Start" Then Exit Sub
With ActiveSheet
For i = 1 To .Cells(Rows.Count, 1).End(xlUp).Row
.Cells(i, 1) = Trim(.Cells(i, 1))
Next i
letzte = .Cells(Rows.Count, 1).End(xlUp).Row
rngLast = .Range("A1:A" & letzte).Find(What:="Ende", after:=.Range("A1"), searchdirection:= _
xlPrevious).Row
rngFirst = .Range("A1:A" & letzte).Find(What:="Start", after:=.Cells(rngLast, 1), _
searchdirection:=xlNext).Row
.Rows(rngLast + 1 & ":" & letzte).Delete
If .Range("a1").Value = "Start" Then Exit Sub
.Rows("1:" & rngFirst - 1).Delete
End With
Application.ScreenUpdating = True
End Sub
[size=8]Code eingefügt mit [url=http://vbahtml.origo.ethz.ch] VBA in HTML 2.3[/url][/size]
Gruß Matze