Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Letzte Zeile in best. Bereich ermitteln

Letzte Zeile in best. Bereich ermitteln
03.05.2005 00:59:15
Markus
Hallo,
mit ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row kann man die letzte Zeile in einem Worksheet ermitteln.
Wie aber kann ich die letzte Zeile in einem bestimmten Bereich (z.B. Spalten CL:FU) ermitteln?
ActiveSheet.Columns("CL:FU").Cells(Rows.Count, 1).End(xlUp).Row funktioniert leider nicht...
Dankeschön!
Gruß,
Markus
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Letzte Zeile in best. Bereich ermitteln
03.05.2005 01:55:50
Hubert

Sub marin()
Dim lR As Long
lR = [CL:FU].SpecialCells(11).Row
MsgBox lR
End Sub

mfg Hubert
AW: Letzte Zeile in best. Bereich ermitteln
03.05.2005 11:16:27
Markus
Hallo Hubert,
das funktiniert bei mir leider nicht. lR gibt mir die (aller-)letzte Zeile zurück, unabhängig vom festgelegten Bereich (CL:FU).
Was mache ich falsch?
Dankeschön!
Anzeige
AW: Letzte Zeile in best. Bereich ermitteln
03.05.2005 12:22:15
Boris
Hi Markus,

Sub letzte_benutzte_zeile_im_bereich()
MsgBox Range("CL:FU").Find("*", searchorder:=xlByRows, searchdirection:=xlPrevious).Row
End Sub

Grüße Boris
AW: Letzte Zeile in best. Bereich ermitteln
03.05.2005 12:54:56
Markus
Hallo Boris,
das funktioniert bestens, dankeschön!
Gruß,
Markus
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Letzte Zeile in einem bestimmten Bereich mit VBA ermitteln


Schritt-für-Schritt-Anleitung

Um die letzte Zeile in einem bestimmten Bereich in Excel VBA zu ermitteln, kannst Du folgende Schritte befolgen:

  1. Öffne den Visual Basic for Applications (VBA) Editor:

    • Drücke ALT + F11, um den VBA-Editor zu öffnen.
  2. Füge ein neues Modul hinzu:

    • Klicke im Projekt-Explorer mit der rechten Maustaste auf dein Projekt und wähle Einfügen -> Modul.
  3. Gib den folgenden Code ein:

    Sub letzte_zeile_im_bereich()
       Dim letzteZeile As Long
       letzteZeile = Range("CL:FU").Find("*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
       MsgBox "Die letzte Zeile im Bereich CL:FU ist: " & letzteZeile
    End Sub
    • Dieser Code sucht die letzte Zeile mit Inhalt im Bereich CL:FU und zeigt das Ergebnis in einer MessageBox an.
  4. Führe das Makro aus:

    • Drücke F5, um das Makro auszuführen und die letzte Zeile anzuzeigen.

Häufige Fehler und Lösungen

  • Fehler: Das Makro gibt die falsche letzte Zeile zurück.

    • Lösung: Stelle sicher, dass der angegebene Bereich korrekt ist und tatsächlich Daten enthält. Verwende die Find-Methode, um nach der letzten Zeile mit Inhalt zu suchen.
  • Fehler: Runtime Error 1004: Unable to find the data.

    • Lösung: Dieser Fehler tritt auf, wenn der angegebene Bereich leer ist. Vergewissere dich, dass im Bereich CL:FU Daten vorhanden sind.

Alternative Methoden

Eine Alternative zur Verwendung der Find-Methode ist die Verwendung der UsedRange-Eigenschaft. Hier ist ein Beispiel:

Sub letzte_zeile_mit_usedrange()
    Dim letzteZeile As Long
    letzteZeile = ActiveSheet.UsedRange.Rows.Count
    MsgBox "Die letzte Zeile im benutzten Bereich ist: " & letzteZeile
End Sub

Diese Methode ermittelt die letzte Zeile basierend auf dem gesamten benutzten Bereich des Arbeitsblattes.


Praktische Beispiele

  1. Ermitteln der letzten Zeile in einem bestimmten Bereich:

    Sub ermitteln_letzte_zeile()
       Dim letzteZeile As Long
       letzteZeile = Range("A1:A100").Find("*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
       MsgBox "Die letzte Zeile in A1:A100 ist: " & letzteZeile
    End Sub
  2. Ermitteln der letzten Zeile mit Inhalt in mehreren Spalten:

    Sub letzte_zeile_mehrere_spalten()
       Dim letzteZeile As Long
       letzteZeile = Range("B:D").Find("*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
       MsgBox "Die letzte Zeile in den Spalten B bis D ist: " & letzteZeile
    End Sub

Tipps für Profis

  • Verwende die xlUp-Konstante, um die letzte Zeile effizient zu ermitteln:

    Sub letzte_zeile_xlup()
      Dim letzteZeile As Long
      letzteZeile = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row
      MsgBox "Die letzte Zeile in Spalte A ist: " & letzteZeile
    End Sub
  • Achte darauf, dass beim Arbeiten mit großen Datenmengen die Performance der Makros optimiert wird.


FAQ: Häufige Fragen

1. Wie finde ich die letzte Zeile in einem bestimmten Bereich? Du kannst die Find-Methode verwenden, um die letzte Zeile mit Inhalt in einem festgelegten Bereich zu ermitteln.

2. Gibt es eine Möglichkeit, die letzte Zeile ohne VBA zu finden? Ja, du kannst die Funktion =MAX(WENN(BEREICH<>"";ZEILE(BEREICH))) in einer Array-Formel verwenden (mit STRG + SHIFT + ENTER), um die letzte Zeile mit Inhalt zu finden.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige