Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

Übertragen von Daten in neue Mappe und Sortieren in Excel





Frage

Hallöchen zusammen. Habe da folgendes Problem, bei dem ihr mir hoffentlich weiterhelfen könnt. Zunächst zum Aufbau des Programms in Excel. In der Mappe 1 stehen alle verfügbaren Daten (Basisliste) z.B. Namen in Spalte B, Nachnamen in Spalte C, Geburtsdaten in Spalte D, u.s.w.. Dort ist ebenfalls ein "Arbeitsfeld" (Spalte A) vorangestellt. Nun möchte ich, dass die komplette Zeile (d.h. z.B. B1 bis G1, also Name, Nachname, Geburtsdatum, u.s.w.) in eine neue Mappe (Mappe 2) übertragen wird, wenn ein bestimmter Wert (z.B. ein X oder ein Y oder ein Z) in das o.g. Arbeitsfeld der Basisliste eingegeben wird. Diese neue Mappe soll die zuvor übertragenen Werte (Name, Nachname, u.s.w.) auch sortieren. Ich hoffe ihr könnt mir dort weiterhelfen, verzweifle nämlich langsam. Vielen Dank schon mal. Gruß Kai

Antwort 1 von fedjo

Hallo Kai,
Zitat:
in eine neue Mappe (Mappe 2

muss es eine neue Mappe sein oder reicht auch eine neue Tabelle2?

Die neue Mappe müsste zum übertragen jedesmal geöffnet werden.

Gruß
fedjo

Antwort 2 von Flieger79

Ja, es müsste schon eine neue Mappe sein. Mir ist auch klar, dass diese dann separat geöffnet werden müsse.

Antwort 3 von fedjo

Hallo Kai,
war ein paar Tage im Urlaub, kann mich daher erst jetzt wieder mit deinem Problem beschäftigen.

Werden eine Mustertabelle erstellen.

Gruß
fedjo

Antwort 4 von fedjo

Hallo Kai,
in das Codefenster von Mappe1.xls einfügen:

Private Sub Worksheet_Change(ByVal Target As Range)
Dim Zfrei As Long
If Target.Column = 1 And Cells(Target.Row, Target.Column) = "x" Then
Application.DisplayAlerts = False
Workbooks.Open Filename:= _
"C:\Eigene Dateien\Mappe2.xls" 'Pfad anpassen!
Zfrei = Sheets(1).Cells(65536, 1).End(xlUp).Row + 1
Workbooks("Mappe2.xls").Worksheets(1).Range("A" & Zfrei & ":F" & Zfrei) = _
Workbooks("Mappe1.xls").Worksheets(1).Range("A" & Target.Row & ":F" & Target.Row).Value2
End If
End Sub

Durch das einfügen vom einem (x) Mappe1.xls in SpalteA wird Mappe2.xls geöffnet und die ganze Zeile übertragen.
Pfad für Mappe2.xls im Code anpassen.

in das Codefenster von Mappe2.xls einfügen:

Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
Dim RaZelle As Range
For Each RaZelle In Range(Target.Address)
If RaZelle.Column = 2 Then
ActiveSheet.UsedRange.Sort Key1:=Range("B1"), Order1:=xlAscending, _
Header:=xlGuess, OrderCustom:=1, MatchCase:=False, _
Orientation:=xlTopToBottom
Exit For
End If
Next RaZelle
ActiveWorkbook.Save
Windows("Mappe1.xls").Activate
End Sub

Mappe2.xls wird automatisch sorrtiert durch die Einträge in SpalteB und gespeichert.

Gruß
fedjo

Antwort 5 von Flieger79

Hallo fedjo,

vielen Dank schon mal für deine Unterstützung. Werde das die Tage mal ausprobieren.

Gruß
Kai

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: