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

Letzte 10 Zeilen von Spalte in Arbeitsblatt.....

Forumthread: Letzte 10 Zeilen von Spalte in Arbeitsblatt.....

Letzte 10 Zeilen von Spalte in Arbeitsblatt.....
28.10.2019 10:51:09
Spalte
Hallo Leute,
Ich benötige bitte ein Makro welches die letzten 10 Zeilen von Spalte A in ein anderes Arbeitsblatt in Zeile A schreibt (zb. A1:A10)
Danke
Manuel
Anzeige

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Letzte 10 Zeilen von Spalte in Arbeitsblatt.....
28.10.2019 11:29:57
Spalte
Moin Manuel,
da so etwas mit schon Basis-Kenntnissen in VBA realisierbar ist (ja, "bescheiden" habe ich gelesen) frage ich mich, warum es VBA sein soll. Es gibt auch andere Möglichkeiten, wo du vielleicht auf eigenen Füßen stehen kannst.
Gruß
Günther
Anzeige
AW: Letzte 10 Zeilen von Spalte in Arbeitsblatt.....
28.10.2019 11:41:38
Spalte
Hallo Günther, Mahlzeit !
Danke für die hilfreiche Antwort ;)
Lg
AW: Letzte 10 Zeilen von Spalte in Arbeitsblatt.....
28.10.2019 12:13:35
Spalte
Ja, den Smiley habe ich gesehen.
Aber ich übersetze deine Antwort auf meine Frage einmal so, wie es bei potenziellen Helfern auch ankommen könnte:
"Der Grund, warum ich das in VBA haben will, geht dich nichts an. Hauptsache ich erhalte den Code (und keine Alternativlösung) zum Nulltarif."
Gruß
Günther
Anzeige
oT einen anderen thread betreffend ...
28.10.2019 12:14:15
neopa
Hallo Günther,
... hattest Du meine Mails von Ende der vergangenen Woche erhalten?
Gruß Werner
.. , - ...
AW: hierzu nachgefragt ...
28.10.2019 12:13:16
neopa
Hallo Manuel,
... Du meinst sicherlich mit "die letzten 10 Zeilen von Spalte A" die letzten 10 Datenwerte in der Spalte. Können sich dazwischen auch Leerzellen befinden und wenn ja sollen diese mitgezählt werden?
Wie auch immer, das wäre auch relativ einfach mit einer Formel realisierbar und Günther meint dies u.a. auch sowie aber sicherlich vordergründig den Einsatz einer PoweeQuery-Lösung.
Gruß Werner
.. , - ...
Anzeige
Mensch Kollegen ....
28.10.2019 12:26:24
Klaus
.... jetzt seid doch nicht so. Er fragt ja nicht nach einer ellenlangen komplexen VBA-Auftragsprogrammierung, sondern nur nach etwas sehr simplem.
Manuel, probier es mal hiermit. Muss natürlich an deine Tabelle angepasst werden.
Sub Last10Copy()
Const SpalteQuelle As Long = 1              '1 wie Spalte A
Const BlattQuelle As String = "Tabelle1"
Const BlattZiel As String = "Tabelle2"
Const xCopy As Integer = 10                 'letzte x Zeilen kopieren
Dim lRow As Long
On Error GoTo hell 'falls es keine 10 Zeilen gibt
With Sheets(BlattQuelle)
lRow = .Cells(.Rows.Count, SpalteQuelle).End(xlUp).Row
.Cells(lRow - xCopy + 1, SpalteQuelle).Resize(xCopy, 1).Copy
End With
Sheets(BlattZiel).Range("A1").PasteSpecial
GoTo heaven
hell:
MsgBox ("Das war nichts!")
heaven:
Application.CutCopyMode = False
End Sub
LG,
Klaus M.
Anzeige
AW: möglicherweise hast Du übersehen, dass ...
28.10.2019 13:17:36
neopa
Hallo Klaus,
... auch Gegenfragen an den TE gestellt wurden.
Eine Formellösung finde ich jedenfalls einfacher. Hier (m)eine die lediglich die letzten 10 Werte listet (egal wie viele Leerzellen in Spalte A dazwischen vorhanden sind).
=INDEX(A:A;AGGREGAT(14;6;ZEILE(A$1:A$9999)/(A$1:A$9999"");ZEILE(A1)))
und Formel 9 Zellen nach unten kopieren.
Gruß Werner
.. , - ...
Anzeige
AW: Mensch Kollegen ....
28.10.2019 18:04:02
Manuel
Danke klaus
Werd ich ausprobieren, wird aber sicher funktionieren
Danke nochmals
Schönen Abend
Beste Grüße
Manuel
;
Anzeige
Anzeige

Infobox / Tutorial

Letzte 10 Zeilen einer Spalte in Excel kopieren


Schritt-für-Schritt-Anleitung

Um die letzten 10 Zeilen einer bestimmten Spalte (z.B. Spalte A) in ein anderes Arbeitsblatt zu kopieren, kannst du ein VBA-Makro verwenden. Hier ist eine einfache Schritt-für-Schritt-Anleitung:

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

  2. Klicke auf Einfügen und wähle Modul, um ein neues Modul zu erstellen.

  3. Kopiere den folgenden Code in das Modul:

    Sub Last10Copy()
       Const SpalteQuelle As Long = 1              ' 1 wie Spalte A
       Const BlattQuelle As String = "Tabelle1"
       Const BlattZiel As String = "Tabelle2"
       Const xCopy As Integer = 10                 ' letzte x Zeilen kopieren
       Dim lRow As Long
       On Error GoTo hell ' falls es keine 10 Zeilen gibt
       With Sheets(BlattQuelle)
           lRow = .Cells(.Rows.Count, SpalteQuelle).End(xlUp).Row
           .Cells(lRow - xCopy + 1, SpalteQuelle).Resize(xCopy, 1).Copy
       End With
       Sheets(BlattZiel).Range("A1").PasteSpecial
       GoTo heaven
    hell:
       MsgBox ("Das war nichts!")
    heaven:
       Application.CutCopyMode = False
    End Sub
  4. Passe die Namen von BlattQuelle und BlattZiel entsprechend deiner Arbeitsblätter an.

  5. Drücke F5, um das Makro auszuführen.

Dieses Makro kopiert die letzten 10 Zeilen von Spalte A aus "Tabelle1" in "Tabelle2".


Häufige Fehler und Lösungen

  • Fehler: "Das war nichts!"

    • Lösung: Stelle sicher, dass in der Quellspalte (z.B. Spalte A) mindestens 10 Zeilen mit Daten vorhanden sind.
  • Fehler: "Objekt nicht gefunden"

    • Lösung: Überprüfe, ob die Arbeitsblattnamen korrekt geschrieben sind. Excel ist sehr empfindlich gegenüber Tippfehlern.

Alternative Methoden

Wenn du kein VBA verwenden möchtest, kannst du auch eine Formel nutzen, um die letzten 10 Werte einer Spalte zu extrahieren. Hier ist eine Formel, die du verwenden kannst:

=INDEX(A:A;AGGREGAT(14;6;ZEILE(A$1:A$9999)/(A$1:A$9999<>"");ZEILE(A1)))

Diese Formel listet die letzten 10 Werte in Spalte A auf. Kopiere die Formel in die ersten 10 Zellen in einer anderen Spalte, um die letzten 10 Datenwerte anzuzeigen.


Praktische Beispiele

Angenommen, in "Tabelle1" hast du folgende Werte in Spalte A:

1
2
3
4
5
6
7
8
9
10
11

Wenn du das VBA-Makro ausführst, werden in "Tabelle2" die Werte 2 bis 11 in den Zellen A1 bis A10 kopiert. Bei der Formellösung würdest du ebenfalls die letzten 10 Werte erhalten, egal ob Leerzellen zwischen den Werten sind oder nicht.


Tipps für Profis

  • Wenn du mit großen Datenmengen arbeitest, kann die Verwendung von VBA deutlich schneller sein, als umfangreiche Formeln zu nutzen.
  • Stelle sicher, dass deine Arbeitsblätter sinnvoll benannt sind, damit du sie leichter im Code referenzieren kannst.
  • Nutze die Application.CutCopyMode = False-Zeile am Ende des Makros, um den Kopiermodus zu beenden und das Clipboard zu leeren.

FAQ: Häufige Fragen

1. Kann ich das Makro anpassen, um mehr oder weniger als 10 Zeilen zu kopieren?
Ja, ändere einfach den Wert von Const xCopy As Integer = 10 auf die gewünschte Anzahl.

2. Funktioniert das auch in Excel Online?
Das VBA-Makro funktioniert nur in der Desktop-Version von Excel. In Excel Online musst du eine Formellösung verwenden.

3. Was passiert, wenn die Spalte Leerzellen enthält?
Das VBA-Makro kopiert die letzten 10 Zeilen, unabhängig davon, ob Leerzellen vorhanden sind, während die Formel nur die letzten 10 nicht-leeren Werte auflistet.

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