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

Zeilen in ein anderes Tabellenblatt verschieben

Zeilen in ein anderes Tabellenblatt verschieben
05.09.2018 13:37:40
Stefan
Liebes Forum,
in meiner Tabelle bestehen ca.10 Tabellenblätter, deren Zeilen mit der Eingabe des Datums in Spalte 1 auf das Tabellenblatt "Archiv" verschoben werden sollen. Das ganze funktioniert dank Onkel Gugl auch soweit mit folgendem Code:

'aktuelle zeile wenn in spalte 1 das datum steht, dann zeile nach blatt archiv kopieren
Private Sub Worksheet_Change(ByVal Target As Range)
Dim zz As Long 'letzte zeile im blatt Archiv
Dim Zeile As Long 'aktive zeile im blatt Tabelle1
Dim Spalte As Integer 'aktive spalte im blatt aktuelle ( aktion wird nur ausgelöst bei spalte  _
1)
Spalte = ActiveCell.Column 'aktive spalte auslesen
If Spalte = 1 Then
Zeile = Target.Row 'aktive zeile auslesen
'letzte zeile feststellen im blatt Archiv
zz = Sheets("Archiv").Cells(Rows.Count, 1).End(xlUp).Row
'wenn Archiv dann
If Sheets("Tabelle1").Cells(Zeile, 1) = Date Then
'aktuelle zeile kopieren
Sheets("Tabelle1").Cells(Zeile, 1).EntireRow.Copy
Sheets("Archiv").Select
If zz > 2 Then
Sheets("Archiv").Cells(2, 1).EntireRow.Select
Selection.Insert Shift:=xlDown
Else
Sheets("Archiv").Cells(2, 1).EntireRow.Select
End If
ActiveSheet.Paste
'aktuelle zeile löschen
Sheets("Tabelle1").Select
Cells(Zeile, 1).EntireRow.Select
Selection.Delete Shift:=xlUp
End If
End If
End Sub
Nun möchte ich gerne im "Archiv" die Herkunft bzw. den Namen des Herkunfts-Tabellenblattes (im Beispiel "Tabelle1") in Spalte 2 vermerken.
Mein Gedanke war nun in den Tabellenblättern eine Hilfsspalte mit dem Tabelleblattnnamen

=TEIL(ZELLE("Dateiname");FINDEN("]";ZELLE("Dateiname"))+1;30) 
anzulegen. Das Formelergebnis wird aber im Code nicht als Text eingefügt und so gelingt die Variante nicht. Wie kann ich das ändern, bzw. gibt es auch einen Weg ohne Hilfsspalte?
Vielen Dank für eure Hilfe
Stefan

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

Betreff
Datum
Anwender
Anzeige
AW: Zeilen in ein anderes Tabellenblatt verschieben
05.09.2018 15:59:52
ChrisL
Hi Stefan
Ins Modul "DieseArbeitsmappe"
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Dim ws As Worksheet: Set ws = Worksheets("Archiv")
If Sh.Name = ws.Name Then Exit Sub
If Target.Column = 1 And Target = Date Then
ws.Rows(2).Insert
Target.EntireRow.Copy ws.Range("A2")
ws.Range("B2") = Sh.Name
On Error Resume Next
Application.EnableEvents = False
Target.EntireRow.Delete
Application.EnableEvents = True
End If
End Sub
cu
Chris
AW: Zeilen in ein anderes Tabellenblatt verschieben
06.09.2018 10:46:54
Stefan
Hi Chris,
wow, das ist wesentlich kompakter und alles drin - super! Ich habe gerade einiges gelernt.
Herzlichen Dank dir!!
Stefan
Anzeige

328 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige