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

Forumthread: Markierte Zeile in anderes Tabellenblatt einfügen

Markierte Zeile in anderes Tabellenblatt einfügen
15.03.2018 23:22:15
Bianca85
Hallo :)
ich habe ein scheinbar triviales vba Problem.
In einer Excel gibt es zwei Tabellenblätter. Das erste ist befüllt mit aktuellen Fällen "Current", das zweite mit "Completed" abgeschlossenen.
Durch Klick auf einen Button soll eine Zeile aus dem Blatt Current nach Completed verschoben werden und zwar unten ans Ende.
Allerdings lässt mich Excel aus irgendeinem mir nicht bekannten Grund nicht...
Private Sub CommandButton2_Click()
ActiveCell.EntireRow.Copy
Sheets("completed assignments in 2017").Select
ActiveCell.End(xlDown).Activate 'sucht letzte belegte Zelle
ActiveCell.Offset(1, 0).Activate
EntireRow.Paste
End Sub
Laufzeit Fehler 1004 und außerdem springt er nicht in die letzte befüllte Zeile.
Seht ihr den Fehler vielleicht? Würde mich sehr freuen, wenn ihr euch das ansehen könntet. Vielen Dank :)
Alles Liebe Bianca
Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Markierte Zeile in anderes Tabellenblatt einfügen
16.03.2018 05:36:55
Gerd
Moin Bianca!
Private Sub CommandButton2_Click()
ActiveCell.EntireRow.Cut Destination: Sheets("completed assignments in 2017").Cells(Sheets(" _
completed assignments in 2017").Rows.Count, 1).End(xlUp).Offset(1, 0).EntireRow
Application.CutCopyMode = False
End Sub
Gruß Gerd
Anzeige
AW: Markierte Zeile in anderes Tabellenblatt einfügen
16.03.2018 11:27:53
Bianca85
Lieber,
du bist spitze! Vielen Dank! DU hast mir gerade einen Haufen neuer grauer Haare erspart, es funktioniert nämlich einwandfrei.
Mich würde nur noch interessieren, ob die entirerow.cut destination:= auch nur das Einfügen von Werten ohne FOrmeln erlaubt. Weißt du das zufällig? Wenn nein, ist das auch egal :)
Hast mir so schon sehr geholfen!
Vielen Dank nochmal!
:)
LG
Bianca
PS: Hier ist meiner gesamter Code
Private Sub CommandButton2_Click()
'Gerds Code: 

Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Markierte Zeile in anderes Tabellenblatt einfügen


Schritt-für-Schritt-Anleitung

Um eine markierte Zeile aus einem Excel-Tabellenblatt in ein anderes zu verschieben, kannst Du VBA verwenden. Hier ist eine einfache Anleitung, wie Du dies umsetzen kannst:

  1. Öffne den VBA-Editor: Drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Füge ein Modul hinzu: Klicke im Projekt-Explorer mit der rechten Maustaste auf dein Arbeitsblatt und wähle "Einfügen" > "Modul".

  3. Füge den Code ein: Kopiere den folgenden VBA-Code in das Modul:

    Private Sub CommandButton2_Click()
       ActiveCell.EntireRow.Cut Destination:=Sheets("completed assignments in 2017").Cells(Sheets("completed assignments in 2017").Rows.Count, 1).End(xlUp).Offset(1, 0).EntireRow
       Application.CutCopyMode = False
    End Sub
  4. Button hinzufügen: Füge in Deinem Excel-Arbeitsblatt einen Button hinzu, und verlinke diesen mit dem oben erstellten Makro.

  5. Testen: Klicke auf den Button, während Du eine Zeile in "Current" markiert hast. Diese sollte jetzt in das Blatt "Completed" verschoben werden.


Häufige Fehler und Lösungen

  • Laufzeit Fehler 1004: Dieser Fehler kann auftreten, wenn Du versuchst, auf eine nicht vorhandene Zelle zuzugreifen. Stelle sicher, dass der Blattname korrekt ist und es keine Leerzeichen gibt.
  • Excel lässt mich nicht kopieren: Wenn sich der Bereich ausgegraut präsentiert, könnte dies daran liegen, dass das Zielblatt geschützt ist. Überprüfe den Blattschutz und deaktiviere ihn gegebenenfalls.

Alternative Methoden

Falls Du keine VBA-Programmierung verwenden möchtest, kannst Du auch die Funktion "Ausschneiden" und "Einfügen" manuell nutzen:

  1. Markiere die Zeile in "Current".
  2. Klicke mit der rechten Maustaste und wähle "Ausschneiden".
  3. Wechsele zu "Completed" und klicke in die erste leere Zeile.
  4. Klicke mit der rechten Maustaste und wähle "Einfügen".

Diese Methode ist zwar nicht automatisiert, funktioniert aber ebenfalls gut.


Praktische Beispiele

Wenn Du beispielsweise eine Zeile mit den Daten eines abgeschlossenen Projekts in das "Completed"-Tabellenblatt verschieben möchtest, gehe wie folgt vor:

  • Markiere die Zeile in "Current", die Du verschieben möchtest (z.B. A1:D1).
  • Klicke auf den Button, der das VBA-Makro ausführt.
  • Überprüfe das "Completed"-Tabellenblatt, um sicherzustellen, dass die Daten korrekt eingefügt wurden.

Tipps für Profis

  • Verwende die Range-Objekte: Anstelle von ActiveCell kannst Du spezifische Zellreferenzen verwenden, um deinen Code flexibler zu gestalten.
  • Fehlerbehandlung einfügen: Implementiere eine Fehlerbehandlung in Deinem VBA-Code, um mögliche Laufzeitfehler elegant abzufangen.
On Error GoTo ErrorHandler
' Dein Code hier
Exit Sub
ErrorHandler:
MsgBox "Ein Fehler ist aufgetreten: " & Err.Description

FAQ: Häufige Fragen

1. Kann ich nur Werte ohne Formeln verschieben? Ja, Du kannst nur die Werte verschieben, indem Du Copy anstelle von Cut verwendest und den Zielbereich entsprechend anpasst.

2. Warum funktioniert mein Button nicht? Überprüfe, ob der Button korrekt mit dem VBA-Makro verknüpft ist. Rechtsklicke auf den Button und gehe zu "Makro zuweisen", um sicherzustellen, dass das richtige Makro ausgewählt ist.

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