Live-Forum - Die aktuellen Beiträge
Datum
Titel
23.04.2025 08:56:57
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

zur letzten aktiven Zelle Springen

Forumthread: zur letzten aktiven Zelle Springen

zur letzten aktiven Zelle Springen
14.08.2002 10:42:03
Chris
Guten Moregen alle zusammen!

Ich habe folgendes Problem:

Ich habe ein Makro programmiert, das von Blatt A die aktuelle Zeile/Zelle in Blatt B kopiert.

Sub Zusammenstellen()
Selection.EntireRow.Copy
Sheets("Blatt B").Select
Cells(1, 1).Activate
ActiveSheet.Paste
End Sub

Das funktioniert auch perfekt, nur möchte ich erreichen, daß Excel nach dem Paste wieder an die Stelle zurückspringt wo es zuletzt war, also in der Zelle/Zeile auf Blatt A von der ich kopiert habe.
Geht so was?

Danke & Gruß
Christian

Anzeige

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

Betreff
Datum
Anwender
Anzeige
So hüpftst Du gar nicht weg
14.08.2002 10:47:40
BCM
Sub Zusammenstellen()
Selection.EntireRow.Copy
Sheets("Blatt B").Cells(1, 1).Paste
End Sub

Re: zur letzten aktiven Zelle Springen
14.08.2002 10:49:19
Folker
Merk dir einfach davor die Zelladresse und geh am Ende wieder dahin:

dim x as string
x = activecell.address
.
.
.
Sheets("Blatt A").Select
range(x).select

Re: zur letzten aktiven Zelle Springen
14.08.2002 10:51:58
Werner
Sub Zusammenstellen()
Dim AC, AktRange
AC = ActiveSheet.Name
AktRange = ActiveCell.Address
Selection.EntireRow.Copy
Sheets("Blatt B").Select
Cells(1, 1).Activate
ActiveSheet.Paste
Sheets(AC).Select
Range(AktRange).Select
End Sub
Anzeige
Re: So hüpftst Du gar nicht weg
14.08.2002 10:59:21
Chris
Danke Dir, aber das funktioniert bei mir nicht so ganz, ich bekomme die Fehlermeldung:
Laufzeitfehler 438 Objekt unterstützt diese Methode nicht

Gruß
Chris

Re: So hüpftst Du gar nicht weg
14.08.2002 11:17:07
BCM
Hi Chris,
dann nimm statt Paste besser PasteSpecial.
cu
BCM
Anzeige

Infobox / Tutorial

Zur letzten aktiven Zelle springen in Excel VBA


Schritt-für-Schritt-Anleitung

Um in Excel VBA zur letzten aktiven Zelle zu springen, kannst du das folgende Makro verwenden:

Sub Zusammenstellen()
    Dim AC As String
    Dim AktRange As String

    ' Aktuellen Blattnamen und Zelladresse speichern
    AC = ActiveSheet.Name
    AktRange = ActiveCell.Address

    ' Zeile kopieren
    Selection.EntireRow.Copy
    Sheets("Blatt B").Cells(1, 1).PasteSpecial

    ' Zurück zur letzten aktiven Zelle springen
    Sheets(AC).Select
    Range(AktRange).Select
End Sub

Dieses Skript speichert zuerst den Namen des aktiven Blattes und die Adresse der aktiven Zelle. Nach dem Kopieren der Zeile in "Blatt B" wird dann zur ursprünglichen Zelle zurückgekehrt.


Häufige Fehler und Lösungen

Fehler: Laufzeitfehler 438 – Objekt unterstützt diese Methode nicht

  • Lösung: Stelle sicher, dass du PasteSpecial statt Paste verwendest, da dies unter Umständen besser funktioniert. Hier ein Anpassungsvorschlag:
Sheets("Blatt B").Cells(1, 1).PasteSpecial

Alternative Methoden

Eine alternative Methode zur Ermittlung der letzten aktiven Zelle ist die Verwendung von Application.GoTo. Hier ist ein Beispiel:

Sub SpringeZurLetztenZelle()
    Dim letzteZelle As Range
    Set letzteZelle = ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell)
    Application.Goto letzteZelle
End Sub

Dieses Makro springt direkt zur letzten Zelle mit Daten in dem aktiven Arbeitsblatt.


Praktische Beispiele

Wenn du regelmäßig mit Excel VBA arbeitest, kann das folgende Beispiel hilfreich sein:

Sub KopiereUndSpringeZurück()
    Dim AC As String
    Dim AktRange As String

    AC = ActiveSheet.Name
    AktRange = ActiveCell.Address

    ' Kopiere die gesamte Zeile
    Selection.EntireRow.Copy
    Sheets("Blatt B").Cells(1, 1).PasteSpecial

    ' Zurück zur letzten aktiven Zelle springen
    Sheets(AC).Select
    Range(AktRange).Select
End Sub

Mit diesem Beispiel kannst du schnell und effizient zwischen einem Quell- und Zielblatt wechseln und dabei die letzte aktive Zelle ermitteln.


Tipps für Profis

  • Verwende Variablen: Halte deinen Code sauber und verwende Variablen, um die Zelladressen und Blattnamen zu speichern.
  • Fehlerbehandlung: Implementiere Fehlerbehandlungsroutinen, um unerwartete Fehler zu vermeiden.
  • Dokumentation: Kommentiere deinen Code, um die Wartbarkeit zu erhöhen und anderen Nutzern zu helfen, deinen Code zu verstehen.

FAQ: Häufige Fragen

1. Wie ermittele ich die letzte aktive Zelle in einem bestimmten Blatt?
Du kannst die Cells.SpecialCells(xlCellTypeLastCell) Methode verwenden, um die letzte Zelle mit Daten zu finden.

2. Was mache ich, wenn mein Makro nicht funktioniert?
Überprüfe die Syntax und stelle sicher, dass alle Blätter und Zellen existieren und korrekt benannt sind. Stelle auch sicher, dass du PasteSpecial verwendest, um Fehler zu vermeiden.

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