Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Erste Leere Zeile suchen

Erste Leere Zeile suchen
03.08.2004 11:16:49
Sebastian
Hallo zusammen!
Kann mir einer von euch sagen, wie ich mittels VBA die erste leere Zelle(Zeile) in einer Spalte suchen kann?
Danke schon mal im vorraus!
mfg
Anzeige

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Erste Leere Zeile suchen
03.08.2004 11:18:06
Harald
Hallo Sebastian:
lastrow = Worksheets("Tabelle1").Range("d65536").End(xlUp).Row
Name der Tabelle und der Spalte an Deine Bedürfnisse anpassen.
Gruß Harald
AW: Erste Leere Zeile suchen
Sebastian
Ich danke!!!
AW: Erste Leere Zeile suchen
Sebastian
Sorry, muss gleich noch mal was fragen:
Kann ich mir irgendwie ausgeben lassen in welcher Zeile sich diese leere Zelle befindet?
Ich muss nämlich dann wissen, was in einer anderen Spalte, aber in dieser Zeile steht.
Anzeige
AW: Erste Leere Zeile suchen
Hendrik
Genau das gibt Dir der Wert der Variable lastrow doch an. ;-)
AW: Erste Leere Zeile suchen
Sebastian
Aha!
Sorry, wenn ich so blöd frag, aber ich hatte bisher noch nicht wirklich viel VBA zu tun...
Und über Range("lastrow")= "..." kann ich diese zelle dann beschreiben?
AW: Erste Leere Zeile suchen
Hendrik
Genau. Allerdings die Anführungszeichen weglassen, da es sich ja um eine Variable und nicht um einen String handelt. Ausserdem brauchst Du noch den entsprechenden Spaltenindex um die Zelle eindeutig adressieren zu können. In etwa: Range(lastrow, 2)
Dies würde die Zelle in der letzten Zeile der Spalte B adressieren.
Anzeige
AW: Erste Leere Zeile suchen
Sebastian
Hab folgendes in meine Befehlsschaltfläche geschrieben:

Private Sub CommandButton1_Click()
lastrow = Worksheets("Drehmaschine").Range("B65536").End(xlUp).Row
Worksheets("Drehmaschine").Range(lastrow, 2) = "Test"
End Sub

Hier sucht er in der Spalte B von Zeile 65536 aus nach oben die letzte nicht beschriebene Zeile, hab ich das richtig verstanden?
In meinem Fall wäre das B1480. Da will ich jetzt mal "test" rein schreiben. SO funktionierts aber net... :-(
Anzeige
AW: Erste Leere Zeile suchen
Hendrik
So klappts mit dem Nachbarn:
Worksheets(1).Cells(lastrow, 2).Value = "Test"
AW: Erste Leere Zeile suchen
WernerB.
Hallo zusammen,
bitte entschuldigt, wenn ich mich einmische, aber:
Mit der Codezeile von Harald wird die letzte Zeile mit Inhalt in einer Spalte ermittelt;
gesucht wird aber die erste leere Zeile (also ohne Inhalt) in einer Spalte. Folglich sollte man an Haralds Code-Zeile noch ein "+ 1" dranhängen, oder nicht?
Gruß
WernerB.
Anzeige
Ja!
03.08.2004 12:20:32
Harald
AW: Erste Leere Zeile suchen
Sebastian
Ich danke euch vielmals!!!!!!!!!!!
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Erste Leere Zeile in Excel VBA Finden


Schritt-für-Schritt-Anleitung

Um die erste leere Zeile in Excel mit VBA zu finden, kannst Du folgende Schritte befolgen:

  1. Öffne die Excel-Datei, in der Du das Makro erstellen möchtest.

  2. Drücke ALT + F11, um den VBA-Editor zu öffnen.

  3. Füge ein neues Modul hinzu:

    • Klicke mit der rechten Maustaste auf "VBAProject (DeinDateiname)".
    • Wähle "Einfügen" und dann "Modul".
  4. Kopiere und füge den folgenden Code ein:

    Sub ErsteLeereZeileFinden()
       Dim lastrow As Long
       lastrow = Worksheets("Tabelle1").Range("B65536").End(xlUp).Row + 1
       MsgBox "Die erste leere Zeile ist: " & lastrow
    End Sub
  5. Passe den Namen "Tabelle1" und den Spaltenbuchstaben nach Deinen Bedürfnissen an.

  6. Führ das Makro aus, um die erste leere Zeile zu finden.


Häufige Fehler und Lösungen

  • Problem: Der Code findet nicht die erste leere Zeile.

    • Lösung: Stelle sicher, dass Du + 1 zu der lastrow-Variable hinzufügst, um die erste leere Zeile nach der letzten gefüllten Zeile zu ermitteln.
  • Problem: Der Code gibt einen Fehler zurück.

    • Lösung: Überprüfe, ob der Tabellenname korrekt ist und ob die richtige Spalte angegeben wurde.

Alternative Methoden

Wenn Du VBA nicht verwenden möchtest, kannst Du auch die Excel-Funktion =VERGLEICH() nutzen, um die erste leere Zelle in einer Spalte zu finden. Diese Methode ist jedoch weniger effizient für große Datenmengen.


Praktische Beispiele

Hier ist ein Beispiel, wie Du in die nächste leere Zeile schreiben kannst:

Sub InNächsteLeereZeileSchreiben()
    Dim lastrow As Long
    lastrow = Worksheets("Tabelle1").Range("B65536").End(xlUp).Row + 1
    Worksheets("Tabelle1").Cells(lastrow, 2).Value = "Neuer Eintrag"
End Sub

Dieser Code sucht die nächste leere Zeile in Spalte B und fügt "Neuer Eintrag" ein.


Tipps für Profis

  • Nutze Cells(lastrow, Spaltenindex) anstelle von Range, um den Code flexibler zu gestalten.
  • Verwende Application.ScreenUpdating = False vor dem Code und Application.ScreenUpdating = True danach, um die Performance zu verbessern.

FAQ: Häufige Fragen

1. Wie finde ich die letzte leere Zeile in einer Spalte?
Du kannst den folgenden Code verwenden:

lastrow = Worksheets("Tabelle1").Cells(Rows.Count, "B").End(xlUp).Row

2. Kann ich die erste leere Zelle in einer Zeile finden?
Ja, das ist möglich. Verwende dazu:

Dim firstEmptyCell As Range
Set firstEmptyCell = Worksheets("Tabelle1").Rows(1).Find(What:="", LookIn:=xlValues)

Dieser Code findet die erste leere Zelle in der ersten Zeile.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige