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

Forumthread: Kopieren bis zur letzten gefüllten Zeile ?

Kopieren bis zur letzten gefüllten Zeile ?
24.06.2005 20:23:55
Ilka
Hallo,
ich habe folgendes Problem bei der VBA-Programmierung:
Ich möchte gern in einem Exceltabellenblatt per Makro einen Filter setzen Spalte i = nichtleer sowie daran anschliessend die gefilterten Werte aus Spalte A beginnend ab Zeile 2 bis zur letzten gefüllten Zeile kopieren.
Ich habe zunächst die gefilterten Zeilen 2 bis 6000 kopiert, das funktioniert bereits. Ich möchte jedoch nur bis zur letzte gefüllten Zeile kopieren. Wie macht man das per VBA ?
mein erster Versuch :
Selection.AutoFilter Field:=7, Criteria1:=""
Range("A2:A6000").Select
Selection.Copy
Gruß
Ilka
Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Kopieren bis zur letzten gefüllten Zeile ?
24.06.2005 22:05:17
Herbert
hallo Ilka,
das kannst du so machen:

Sub x()
Dim lz&
lz = Cells(Rows.Count, 1).End(xlUp).Row
Range("A2:A" & lz).Copy [b2]
End Sub

gruß Herbert
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Kopieren bis zur letzten gefüllten Zeile in Excel


Schritt-für-Schritt-Anleitung

Um in Excel die Inhalte einer Zelle bis zur letzten gefüllten Zeile zu kopieren, kannst Du folgende VBA-Makro verwenden. Diese Methode ist besonders nützlich, wenn Du mit großen Datenmengen arbeitest und schnell die Daten von einer Zelle in eine andere kopieren möchtest.

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Klicke auf Einfügen > Modul, um ein neues Modul zu erstellen.

  3. Kopiere den folgenden Code in das Modul:

    Sub KopiereBisLetzteZeile()
       Dim lz As Long
       lz = Cells(Rows.Count, 1).End(xlUp).Row  ' Letzte gefüllte Zeile in Spalte A
       Range("A2:A" & lz).Copy [B2]  ' Kopiere von A2 bis zur letzten gefüllten Zeile nach B2
    End Sub
  4. Schließe den VBA-Editor und gehe zurück zu Excel.

  5. Führe das Makro aus, indem Du ALT + F8 drückst, das Makro auswählst und auf Ausführen klickst.

Mit diesem Makro kannst Du den Inhalt einer Zelle schnell nach unten bis zur letzten Zeile mit Daten kopieren.


Häufige Fehler und Lösungen

  • Fehler: "Laufzeitfehler 1004: Anwendung oder Objekt definierte Fehler."

    • Lösung: Stelle sicher, dass Du das Makro in einem Arbeitsblatt ausführst, das über die entsprechenden Daten verfügt. Überprüfe auch, ob die Spalte, die Du verwendest, tatsächlich Daten enthält.
  • Fehler: "Der Fehler tritt auf, weil die Zielzelle nicht leer ist."

    • Lösung: Stelle sicher, dass die Zelle, in die Du die Daten kopieren möchtest, leer ist. Andernfalls könnte der Inhalt überschrieben werden.

Alternative Methoden

Wenn Du keine VBA-Programmierung verwenden möchtest, kannst Du auch die folgenden Excel-Formeln nutzen, um Inhalte bis zur letzten gefüllten Zeile zu kopieren:

  1. Mit der Funktion INDEX:

    • Verwende die Formel =INDEX(A:A;MAX((A:A<>"")*(ROW(A:A)))), um die letzte gefüllte Zelle in Spalte A zu finden.
  2. Mit CTRL + D:

    • Wähle die Zelle aus, die Du kopieren möchtest, und ziehe den kleinen Anfasser (das kleine Quadrat in der rechten unteren Ecke der Zelle) nach unten bis zur letzten gefüllten Zeile.

Praktische Beispiele

Angenommen, Du hast eine Liste in Spalte A, die bis zur Zeile 1000 reicht, und Du möchtest die Werte in Spalte B kopieren. Du könntest das oben genannte Makro verwenden, um schnell alle Werte von A2 bis zur letzten gefüllten Zeile nach B2 zu kopieren.

Sub KopiereBisLetzteZeile()
    Dim lz As Long
    lz = Cells(Rows.Count, 1).End(xlUp).Row
    Range("A2:A" & lz).Copy [B2]
End Sub

Mit dieser Methode kannst Du sicherstellen, dass Du alle relevanten Daten erfasst, ohne manuell nach der letzten gefüllten Zeile suchen zu müssen.


Tipps für Profis

  • Automatisierung: Du kannst das Makro so anpassen, dass es automatisch beim Öffnen der Datei oder beim Wechseln zu einem bestimmten Blatt ausgeführt wird.
  • Fehlerbehandlung: Integriere On Error Resume Next, um potenzielle Fehler während der Ausführung des Makros elegant zu handhaben.
  • Datenvalidierung: Überprüfe, ob die Zielzellen bereits Daten enthalten, um ungewolltes Überschreiben zu vermeiden.

FAQ: Häufige Fragen

1. Wie kann ich die Formel anpassen, um Daten aus einer anderen Spalte zu kopieren? Du kannst die Spaltenreferenz im VBA-Code oder in der Formel ändern. Zum Beispiel, um Daten aus Spalte C zu kopieren, ändere Cells(Rows.Count, 1) zu Cells(Rows.Count, 3).

2. Funktioniert dieses Makro in Excel 2016 und neueren Versionen? Ja, das Makro sollte in Excel 2016, 2019 und Microsoft 365 einwandfrei funktionieren. Stelle sicher, dass die Makros in Deinen Excel-Einstellungen aktiviert sind.

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