Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Paketebene: nur aktuellstes Datum behalten
#1
Hallo zusammen,
ich stehe vor einem Problem, dass ich aktuell nicht lösen kann.

Folgendes:

- Ich habe eine Spalte mit Paketnummern, die sich zum teil mehrfach wiederholen
- ich habe eine weitere Spalte mit Sendungsnummern, die zu diesen Paketnummernr gehören. Diese Sendungsnummern sind einmalig
- ich habe eine dritte Spalte mit einem Versanddatum je Sendungsnummer

Ich möchte nun, dass es pro Paket nur noch ein Versanddatum gibt undzwar soll dabei immer nur das jeweils aktuellste Datum je Paket erhalten bleiben. Jedes andere Datum des Paketes soll mit dem aktuellsten Datum überschrieben werden.

Da die Tabelle mit der ich arbeite mehreretausend Zeilen hat, kommt manuelles Aussortierung und überschreiben nicht in Frage.
Mit Makro-Kenntnissen kann ich leider nicht dienen Confused

Über Pivot-Tabellen, Sortierfunktionen, Duplikate, etc. bin ich bisher leider nicht zum Ergebnis gekommen.

Hat jemand eine Idee?
Ist schwer zu beschreiben, ich hoffe es ist so weit verständlich.

Anbei eine kleine Beispieldatei. Die grün markierten Zellen wären also jeweils das Datum, was für das jeweils ganze Paket (Spalte A) übernommen werden soll.

Liebe Grüße, Muha


Angehängte Dateien
.xlsx   Test.xlsx (Größe: 9,97 KB / Downloads: 12)
Antwortento top
#2
Hi,

zum Überschreiben der Daten wirst du um VBA nicht herumkommen; dabei kann ich dir fachlich aber nicht helfen.


Zitat:undzwar soll dabei immer nur das jeweils aktuellste Datum je Paket erhalten bleiben. Jedes andere Datum des Paketes soll mit dem aktuellsten Datum überschrieben werden.
Nur mal als kleiner Hinweis: Aktueller als aktuell kann aktuell nicht sein. Wink Dazu eine interessante Lektüre: https://www.spiegel.de/kultur/zwiebelfis...62334.html
Gruß Günter
Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen.
angebl. von Georg Christoph Lichtenberg (1742-1799)
[-] Folgende(r) 1 Benutzer sagt Danke an WillWissen für diesen Beitrag:
  • LCohen
Antwortento top
#3
Ich trau' mich da schon gar nicht mehr ... die Leute gehen lieber saufen als lesen.
Antwortento top
#4
Wenn es dich nicht stört, wenn das Ergebnis in einer neuen Tabelle ausgegeben wird, dann geht dies mit einer einfachen Power Query Abfrage.

Deine makrkierte Zelle für Paket 3 ist übrigens falsch.


Angehängte Dateien
.xlsx   cef - Paketebene nur aktuellstes Datum behalten - Power Query.xlsx (Größe: 20,39 KB / Downloads: 6)
VG, wisch
Wer Hilfe nimmt, sollte auch Hilfe geben! Auch wenn dies auf einem ganz anderm Gebiet geschieht.
Antwortento top
#5
Hi Wisch

füge folgendes Makro in ein modul in Alt+F11 ein.

Code:
Sub Datumeinsatz()
   Application.ScreenUpdating = False
   Dim a As Long, c As Long, d As Range, e As Range, f As Date
   With Range("A1").CurrentRegion
      a = 2
      Do
         For c = a To .Rows.Count
            If .Cells(c, 1) <> .Cells(a, 1) Then Exit For
         Next c
         Set d = Range(.Cells(a, 3), .Cells(c - 1, 3))
         f = d(1)
         For Each e In d
            If e > f Then f = e
         Next e
         d.Value = f
         a = c
      Loop Until c > .Rows.Count
   End With
   Application.ScreenUpdating = True
End Sub


Vorausgesetzt, dass die Paketnummern alle zusammenstehen.

Das Ganze kann auch mit Arrays programmiert werden, was eventuell bei einer so großen Menge wie bei Dir spürbar schneller geht.

Der Vorteil des Makros ggü der Power Query Abfrage ist, dass Du es nur in ein Modul kopieren und starten musst.

Gruss, Raoul
Antwortento top
#6
Wisch, dein Ergebnis sieht gut aus. Leider habe ich mit PowerQuery noch nie etwas gemacht.

Wäre es kompliziert mir in Stichworten zu erklären, wie du dieses Ergebnis erreicht hast?
Das Ergebnis in einem neuen Tabellenblatt wäre in der Tat kein Problem.

Und sorry für die Falsche Markierung in Paket 3. Upsi Angel

Gruß, Muha
Antwortento top
#7
Über: Daten > Abfragen und Verbindungen, gelangst du zu Power Query. Rechts werden dann alle in der Mappe enthaltenen Abfragen gezeigt. U.a. mit einem Doppelklick auf eine Abfrage, öffnet sich für diese der PQ-Editor und zeigt immer das Ergebnis des letzten Schritts an.
 
Klicke, von oben nach unten, die einzelnen Schritte an, um zu sehen was passiert. Zeigt ein Schritt,  rechts, ein zahnradähnliches Symbol, öffnet sich, durch einen Klick darauf, das jeweilige Funktionsfenster.
 
In der Funktionszeile (direkt über der Tabelle) wird der erzeugte M-Code des jeweiligen Schritts gezeigt, der auch nach Bedarf angepasst werden kann. Ein Druck auf die Taste "Erweiterter Editor" zeigt den gesamten M-Code der Abfrage. Es braucht eine Weile (Tage/Wochen), bis man sich an diese Darstellung gewöhnt hat und den Inhalt interpretieren kann. Auch hier kann nach belieben, geändert, eingefügt und gelöscht werden, sollte aber Anfangs vermieden werden, da man zuerst einmal die M-Code Regeln kennen muss, um Fehlermeldungen halbwegs zielsicher interpretieren zu können. Bspw. ist Groß-/Kleinschreibung bei PQ immer exakt zu beachten. Sowohl bei Befehlen, als auch bei selbst definierten Feldnamen und auch bei den Schrittnamen.
 
Da aber sehr viele Abfragen einfach zusammengeklickt werden können, ist es zuerst einmal nicht wichtig, den daraus resultierenden M-Code zu verstehen.
 
 Für diese Abfrage habe ich den Cursor irgendwo in die Ausgangstabelle positioniert und "Daten > Abfragen und Verbindungen > Aus Tabelle/Bereich" gewählt und das Popup mit OK bestätigt.
 
Schon hatte ich die Schritte Source und Changed Type (Quelle / Geänderter Typ), da ich einmalig im PQ-Editor über: Datei > Optionen und Einstellungen > Abfrageoptionen > Regionale Einstellungen > Abfrageschritte "Immer Englisch" gewählt habe, werden bei mir die englischen Schrittnamen angezeigt. Dies ist hilfreich, wenn ich bei eigenen Fragen, international frage.
 
Durch anklicken des Symbols links vom Spaltentitel kann/muss der automatisch ermittelte Datentyp angepasst werden. MUSS bspw. bei Postleitzahlen.
 
Hier nun die weiteren Schritte:
 
Grouped Rows: Start > Gruppieren nach: Paketnummer (ohne Aggregation (Alle Zeilen)) und Ermittlung "Datum aktuell ,mittels "Max" aus Versanddatum.
 
Expanded {0}: Die neue Spalte "Anzahl" zeigt nun oben eine Taste mit 2 auseinanderlaufende Pfeile an. Durch anklicken kann gewählt werden, welche Felder beim "erweitern" der Gruppierung angezeigt werden sollen. Der Inhalt der neuen Spalte "Datum aktuell", wird dabei automatisch auf alle Zeilen der jeweiligen Gruppe (Paketnummer) übernommen.   
 
Removed Columns: Nicht benötige/benötigte Spalten markieren und Start > Spalten entfernen/Andere Spalten entfernen wählen.
 
Renamed Columns: Spaltentitel nach Bedarf anpassen.
 
Abschließen der Abfrage über Start > Schließen & Laden. Wird das Ergebnis einer Abfrage nur für weitere Abfragen benötigt, kann es auch nur intern (Nur Verbindung erstellen) geladen werden. PivotTabel/PivotChart sind auch möglich.
 
Ich habe nun noch eine weitere Abfrage erstellt, die die zu jeder Paketnummer die Anzahl der Lieferungen und das Versanddatum zeigt.
 
Einige gute YouTube Videos sind gut geeignet um mehr über Power Query zu erfahren.
VG, wisch
Wer Hilfe nimmt, sollte auch Hilfe geben! Auch wenn dies auf einem ganz anderm Gebiet geschieht.
Antwortento top
#8
Vielen lieben Dank für die Ausführliche Antwort, Wisch!
War ja doch recht viel zu schreiben. Umso mehr danke ich dir!

Ich werde mich da heute im laufe des Tages hinter klemmen und mich danach sicherlich noch einmal meldenSmile

Liebe Grüße!
Antwortento top
#9
Hier noch die erweiterte Mappe.


Angehängte Dateien
.xlsx   cef - Paketebene nur aktuellstes Datum behalten - Power Query.xlsx (Größe: 24,54 KB / Downloads: 3)
VG, wisch
Wer Hilfe nimmt, sollte auch Hilfe geben! Auch wenn dies auf einem ganz anderm Gebiet geschieht.
Antwortento top
#10
Hallo Muha,
und wie gefällt Dir meine Lösung in #5? Sie liefert das selbe Ergebnis
Gruss, R.
Antwortento top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste