Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
1640to1644
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
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

314 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige