Supportnet / Forum / Tabellenkalkulation
Datenblatt sortieren bei bestimmter Bedingung und Querverweise
Frage
Hi!
Ich habe zwei, in meinen Augen recht komplizierte, Fragen an euch.
Ich habe eine Exceltabelle mit verschiedenen Datenblättern angelegt.
Es handelt sich dabei um eine Tabelle zum Sammeln von Flugzeugen.
Ein Dateblatt beinhaltet ALLE Flugzeuge, die ich gesammelt habe, die anderen Blätter beinhalten diese Flugzeuge nach Fluglinie sortiert.
Nun möchte ich als 1. die Flugzeuge in dem allgemeinen Datenblatt mit ALLEN Flugzeugen nach Nummer automatisch sortiert. Und zwar sollen vier bestimmte Eingaben getätigt werden (Nummer, Farbe, Modell, Fluglinie), erst dann soll das Flugzeug automatisch nach der Nummer einsortiert werden.
Als 2. möchte ich, dass ein Flugzeug automatisch in ein bestimmtes Datenblatt mit allen Eingaben kopiert wird, sobald ich die Fluglinie eingetragen habe.
Also Nummer, Farbe, Modell, Fluglinie, Ort und Datum sollen (wenn vorhanden) in das jeweilige passende Datenblatt übertragen werden.
Wenn ich etwas hinzufüge oder änder, sollte diese Änderung im anderen Datenblatt auch übernommen werden. Das ganze sollte, wenn möglich in beide Richtungen gehen, also eine Änderung sollte im allgemeinen Datenblatt automatisch stattfinden, wenn ich in den Flugliniendatenblättern etwas ändere und andersherum.
Ich hoffe, ich habe mein Anliegen möglichst klar beschrieben. Ich bin der Meinung, sowas ist nur mit VB möglich, wovon ich absolut keine Ahnung habe.
Vielen vielen Dank im Voraus für eure Hilfe und mfG,
Phil
Antwort 1 von schnallgonz
N´abend,
Änderungen in bestehenden Datensätzen hin und her automatisch anpassen, da fehlen mir im Moment Ideen.
Was geht, ist das Sortieren und das automatische Kopieren aus der Gesamttabelle in die Fluglinienblätter.
Kopiere die Codes zu den jeweiligen Blättern, nicht als Modul.
zu 1
zu 2
Alles hängt an Eingaben in Spalte 4 = Spalte D = Fluglinie
ggfls anpassen an Deine Spaltenvorgaben
Tabelle vorher sichern = besser isses
Die Hochkommas weren hier als Apostroph dargestellt, bitte ändern, sie dienen der Kommentierung.
gruß
schnallgonz
Änderungen in bestehenden Datensätzen hin und her automatisch anpassen, da fehlen mir im Moment Ideen.
Was geht, ist das Sortieren und das automatische Kopieren aus der Gesamttabelle in die Fluglinienblätter.
Kopiere die Codes zu den jeweiligen Blättern, nicht als Modul.
zu 1
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Target.Column = 4 Then ´wenn in Spalte4
ActiveCell.CurrentRegion.Select ´Tabellenbereichmarkieren und danach nach SpalteA (Nr) sortieren
Selection.Sort Key1:=Range("A2"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
Range("A2").Select ´A2 anspringen, um aus Sortiermarkierung raus zu kommen
End If
End Subzu 2
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim lz As Long
Dim blatt As String
If Cells(Target.Row, 4).Value <> "" Then
blatt = Cells(Target.Row, 4).Value ´Blattname aus aktiver Zelle ermitteln
lz = Worksheets(blatt).Range("A65536").End(xlUp).Row ´letzte Zeile im Ziel ermitteln
Range(Cells(Target.Row, 1), Cells(Target.Row, 4)).Copy ´aktive Zeile Spalte1-4 kopieren
ActiveSheet.Paste Destination:=Worksheets(blatt).Cells(lz + 1, 1) ´einfügen im Zielblatt
End If
Application.CutCopyMode = False ´Kopiermodus beenden
End SubAlles hängt an Eingaben in Spalte 4 = Spalte D = Fluglinie
ggfls anpassen an Deine Spaltenvorgaben
Tabelle vorher sichern = besser isses
Die Hochkommas weren hier als Apostroph dargestellt, bitte ändern, sie dienen der Kommentierung.
gruß
schnallgonz
Antwort 2 von Phil_K
Boah vielen Dank!!!!
Werde ich nachher mal testen und mich dann nochmal melden...
Liebe Grüße
Werde ich nachher mal testen und mich dann nochmal melden...
Liebe Grüße

