Anzeige
Archiv - Navigation
860to864
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
860to864
860to864
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

860to864: Letzte Zeile im Sheet suchen

Letzte Zeile im Sheet suchen
04.04.2007 08:47:00
Christian
Hallo,
habe mal wieder einn kleines Problem.
Gesucht ist die letzte Zeile die im Sheet beschrieben ist.
Eigentlich habe ich gedacht das der Code so passt, aber leider bricht er immer weider an gewissen stellen ab, obwohl es keine Leezeilen gibt. Vielleicht sieht jemand einen Fehler in meinen Code.
Wäre riesig wenn mir einer weiterhelfen kann.
Private Sub PSP_Elemente()
Dim PSP As String
Dim status As String
Dim i As Long
For i = 2 To Worksheets("PSP").Cells(Rows.Count, 1).End(xlUp).Row
status = Range("E" & CStr(i)).Value
If status = "ABGS" Then
Rows(CStr(i)).Select
Selection.EntireRow.Hidden = True
GoTo naechsteZeile
End If
If (Right(Range("D" & CStr(i)).Value, 4)  "1130") Then
If (Right(Range("D" & CStr(i)).Value, 4)  "1230") Then
If (Right(Range("D" & CStr(i)).Value, 4)  "1330") Then
If (Right(Range("D" & CStr(i)).Value, 4)  "1430") Then
If (Right(Range("D" & CStr(i)).Value, 4)  "1530") Then
If (Right(Range("D" & CStr(i)).Value, 4)  "1800") Then
If (Right(Range("D" & CStr(i)).Value, 4)  "3000") Then
If (Right(Range("D" & CStr(i)).Value, 4)  "1400") Then
Rows(CStr(i)).Select
Selection.EntireRow.Hidden = True
End If
End If
End If
End If
End If
End If
End If
End If
naechsteZeile
Next i
End Sub

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

Betreff
Datum
Anwender
Anzeige
AW: Letzte Zeile im Sheet suchen
04.04.2007 09:10:00
AndrRo
Hallo Christian,
das einzige was mir auffällt ist, dass deine Sprungmarkierung (vor Next) kein Doppelpunkt am Ende hat. Somit ist es nur eine Variable. Schreibe naechsteZeile:
ansonsten sehe ich nur Verkürzungsmöglichlkeiten:

Private Sub PSP_Elemente()
Dim PSP As String
Dim status As String
Dim i As Long
For i = 2 To Worksheets("PSP").Cells(Rows.Count, 1).End(xlUp).Row
If status = Cells(i, 5) = "ABGS" Then
Rows(i).Hidden = True
Else
If (Right(Cells(i, 4), 4) = "1130" And Right(Cells(i, 4), 4) = "1230" And Right(Cells(i,  _
4), 4) = "1330" And _
Right(Cells(i, 4), 4) = "1430" And Right(Cells(i, 4), 4) = "1530" And Right(Cells(i, 4) _
, 4) = "1800" And _
Right(Cells(i, 4), 4) = "1400" And Right(Cells(i, 4), 4) = "3000") = False Then
Rows(i).Hidden = True
End If
End If
Next i
End Sub
gruss
Andreas
Anzeige
AW: Letzte Zeile im Sheet suchen
04.04.2007 09:34:24
Christian
Danke für deine Hilfe war zwar anstatt And Or aber es läuft jetzt 5 mal so schnell.
! Leider habe ich immer noch das gleiche Problem, das er bei bestimmten Zeilen aufhört, obwohl in der Zeile ein Text steht.
AW: Letzte Zeile im Sheet suchen
04.04.2007 09:46:00
Christian
Habe einen Fehler gefunden, leider weiß ich nicht wie ich das Problem lösen kann wenn ich folgendes mache:
t = Worksheets("PSP").Cells(Rows.Count, 1).End(xlUp).Row

ist t = 197 obwohl einträge bis zur Zeile 697 vorhanden sind.
HILLLFFFFFFFFEEEEEEEE!!!!
AW: Letzte Zeile im Sheet suchen
04.04.2007 13:22:00
AndrRo
eine Möglichkeit ist über den benutzten Bereich: Anzahl der Zeilen des benutzten Bereiches ergibt sich durch:
t = Worksheets("PSP").usedrange.rows.count
gruss
Andreas
Anzeige
AW: Letzte Zeile im Sheet suchen
04.04.2007 11:40:00
Chaos
Habe ich das richtig verstanden, dass du die Zeilen in denen in Spalte E "ABGS" steht ausblenden willst und alle Zeilen, in denen in Spalte D nicht eine deiner Zahlen steht?
Wenn ja, probiers damit:

Sub PSP_Elemente()
Dim lngLastRow As Long
Dim zelle As Range
Dim zelle1 As Range
With ActiveSheet
lngLastRow = .Cells.Find(What:="*", After:=Range("A1"), SearchOrder:=xlByRows,  _
SearchDirection:=xlPrevious).Row
Range("$E$2:$E$" & lngLastRow).Select
For Each zelle In Selection
If zelle.Value = "ABGS" Then
zelle.EntireRow.Select
zelle.Rows.Hidden = True
End If
Next
End With
With ActiveSheet
lngLastRow = .Cells.Find(What:="*", After:=Range("A1"), SearchOrder:=xlByRows,  _
SearchDirection:=xlPrevious).Row
Range("$D$2:$D$" & lngLastRow).Select
For Each zelle1 In Selection
If zelle1.Value  1130 And zelle1.Value  1230 And zelle1.Value  1330 And zelle1. _
Value  1430 And zelle1.Value  1530 And zelle1.Value  1800 And zelle1.Value  1400 And zelle1.Value  3000 Then
zelle1.EntireRow.Select
zelle1.Rows.Hidden = True
End If
Next
End With
End Sub
Gruß
Chaos
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige