Anzeige
Archiv - Navigation
1772to1776
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

Sortierung der Liste automatisch?

Sortierung der Liste automatisch?
02.08.2020 15:21:18
Petra
Hallo zusammen,
aus unserem System bekomme ich einen Bericht mit bis zu 600 Zeilen über alle Produkte die wir haben. Ich muss die Liste täglich aktualisieren und folgendes Problem:
- Es muss täglich eine Übersicht erstellt werden, die jedes Produkt nur ein einziges Mal zeigt (z. B. Milch, auch wenn 3 Einträge mit demselben Preis in dem Bericht sind). Bei den Produkten, die mehrere Preise haben (z. B. Reis) sollen pro unterschiedlichem Preis jeweils einmal gezeigt werden werden (Reis hier z. B. zweimal). Dabei muss aber auch der Zeitraum gezeigt werden, wann der Preis ist.
Ich hätte sonst einfach die Duplikate entfernt aber das geht nicht, weil sonst auch die Produkte doppelt drin sind, die den selben Preis haben aber unterschiedliche Zeitraum.
Hier die Beispieltabelle: https://www.herber.de/bbs/user/139419.xlsx
Habt ihr einen einfachen Weg? vielleicht über ein VBA?
Danke :)
Viele Grüße
Petra

43
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: so mE widersprüchlich ...
02.08.2020 15:56:06
neopa
Hallo Petra,
... warum soll Duplikat entfernen nicht das von Dir gewünschte Ergebnis erbringen. So wie Du es beschreibst, macht Excel das bei mir jedenfalls.
Gruß Werner
.. , - ...
AW: so mE widersprüchlich ...
02.08.2020 16:06:18
Petra
Hallo Werner,
ich glaub ich hab das nicht ganz genau beschrieben :) Bei mir bleiben immer noch die "Nudeln" stehen, wenn ich Duplikate entfernen mache. Die sollten aber nur einmal drin stehen, weil derselbe Preis. Beim Datum sollte dann das erste übernommen werden.
Ist das verständlicher?
AW: sund was genau ist für Dich ...
02.08.2020 16:15:57
neopa
Hallo Petra,
... das "erste" Datum? Das jeweils älteste? und zwar älteste für Beginn oder Ende? Oder?
Gruß Werner
.. , - ..
Anzeige
AW: sund was genau ist für Dich ...
02.08.2020 16:19:33
Petra
Aah :) So, ja älteste Datum in Spalte F, also Beginn.
AW: dann sorteire Deine Datentabelle ...
02.08.2020 16:31:30
neopa
Hallo,
... nach "Regal", "Produkt" und nach "Beginn Zeitraum" (und zwar nach Alter absteigend).
Danach würde ich in einer Hilfsspalte mit einer Formel abprüfen, ob für das gleiche Produkt im gleichen Regal auch die gleichen Preise vorliegen und das in dem Fall mit der Formel entsprechend kenntlich machen. Die Daten anschließend nach dieser Spalte filtern, die gefilterten Zeilen löschen und den Filter wieder aufheben.
Gruß Werner
.. , - ...
AW: dann sorteire Deine Datentabelle ...
02.08.2020 17:10:12
Petra
Hallo Werner,
ja, Danke für den Weg. Das ist eine gute Möglichkeit. Ist allerdings immer noch sehr umständlich und fehleranfällig. Trotzdem Danke, ich schaue mal wie ich es für mich löse. Wollte mich bei den VBA mal schlau machen
Anzeige
AW: VBA-Lösung gesucht, thread offen owT
02.08.2020 17:14:46
neopa
Gruß Werner
.. , - ...
AW: Sortierung der Liste automatisch?
02.08.2020 17:56:32
Oberschlumpf
Hi Petra,
ist der Aufbau der Datei im Original genau so wie in der Bsp-Datei?
Kommt jede Originaldatei mit einer Überschriftenzeile?
Beginnen die Datenzeilen immer in Zeile 2 und Spalte A?
Werden im Original die Spalten genau so genutzt wie in der Bsp-Datei? (Regal=Spalte A, Produkt=Spalte B, Preis=Spalte C, ...usw)
Und welche Excel-Version nutzt du? Das ist vllt gar nicht so un-relevant, wie du denkst.
Ciao
Thorsten
AW: Sortierung der Liste automatisch?
02.08.2020 18:05:06
Petra
Hallo Thorsten,
Danke für deine rasche Rückmeldung!
ist der Aufbau der Datei im Original genau so wie in der Bsp-Datei?
Ja
Kommt jede Originaldatei mit einer Überschriftenzeile?
Ja genau
Beginnen die Datenzeilen immer in Zeile 2 und Spalte A?
Ja
Werden im Original die Spalten genau so genutzt wie in der Bsp-Datei? (Regal=Spalte A,
Produkt=Spalte B, Preis=Spalte C, ...usw)
Ja genau
Und welche Excel-Version nutzt du? Das ist vllt gar nicht so un-relevant, wie du denks
Ich glaube Excel für Office 365, (16.0)
Hilft das?
Anzeige
AW: Sortierung der Liste automatisch?
02.08.2020 18:10:35
Günther
Moin Petra, ich weiß aus eigener Erfahrung dass es schwierig ist, ein Problem umfassend zu beschreiben. Trotz aller Folge-Beiträge bin ich mir nicht sicher, ob du diese Lösung als richtig ansiehst …
=> https://my.hidrive.com/lnk/5wAGDylU
 
Gruß
Günther  |  mein Excel-Blog
-.-.-.-

Da ich mich nicht mehr über den "eigenwilligen" Hindernislauf beim Foren-Upload ärgern will, stelle ich meine Uploads hier nur noch in meiner DE-Cloud zur Verfügung. Den Link findest du im Beitrags-Text. Abrufe sind natürlich freiwillig und werden selbstredend nicht ausgewertet.


Anzeige
AW: Sortierung der Liste automatisch?
02.08.2020 18:19:04
Petra
Hallo Günther,
Ja super, genau so soll die Sortierung sein. Wie kann ich dies denn jetzt täglich ausführen? Also wie bekomme ich zukünftig die sortierten Daten in die grüne Tabelle? :)
Danke!
AW: Sortierung der Liste automatisch?
02.08.2020 18:40:07
Günther
Moin Petra,
Bei Excel-Version "Ohne Relevanz" heißt für mich, dass du mindestens Excel 2016 hat. Und da ist Power Query integriert. Wenn du in der grünen Tabelle bist kannst du auf Abfrage|Bearbeiten klicken und im rechten Seitenfenster siehst du die einzelnen Schritte.
Meine grundsätzliche Empfehlung: Ein neues Verzeichnis anlegen, die tägliche Datei dort hinein kopieren und immer auf den gleichen Namen umbenennen. Dann ein Mal das Power Query darauf ausführen und am nächsten Tag (nach dem kopieren) in der grünen Tabelle per Rechtsklick einfach nur Aktualisieren auswählen.
 
Gruß
Günther  |  mein Excel-Blog
Anzeige
AW: Sortierung der Liste automatisch?
03.08.2020 07:11:58
Petra
perfekt, Damit geht das sehr gut :) Noch eine kleine Frage: Wenn ich jetzt bei allen Werten, außer den Doppelten, das Datum auf die Werte "01.01.2020" und "31.12.2020" setzen möchte, geht das auch?
AW: Sortierung der Liste automatisch?
02.08.2020 22:50:26
Werner
Hallo,
keine Ahnung was du mit der "grünen Tabelle" meinst.
Ich habe mich an deiner Beispielmappe orientiert.
Sub Makro2()
Dim loLetzte As Long
Application.ScreenUpdating = False
With ThisWorkbook.Worksheets("Tabelle1")
loLetzte = .Cells(.Rows.Count, "A").End(xlUp).Row
.Sort.SortFields.Clear
.Sort.SortFields.Add Key:=.Range("F2:F" & loLetzte), SortOn:=xlSortOnValues, _
Order:=xlAscending, DataOption:=xlSortNormal
With .Sort
.SetRange Range("A1:G" & loLetzte)
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.Apply
End With
.Range("$A$1:$G$" & loLetzte).RemoveDuplicates Columns:=Array(2, 3, 4, 5), _
Header:=xlYes
End With
End Sub
Gruß Werner
Anzeige
AW: Sortierung der Liste automatisch?
03.08.2020 07:08:25
Petra
Ja, perfekt. Jetzt habe ich es verstanden :) Das bringt schon das gewünschte Ergebnis. Eine kleine Frage noch: Wenn ich jetzt bei allen Datensätzen, außer den doppelten/die zweimal genannt werden, die Datumsangabe in Spalte F sowie G löschen möchte. Geht das darüber auch?
AW: Sortierung der Liste automatisch?
03.08.2020 07:11:22
Petra
perfekt, Damit geht das sehr gut :) Noch eine kleine Frage: Wenn ich jetzt bei allen Werten, außer den Doppelten, das Datum auf die Werte "01.01.2020" und "31.12.2020" setzen möchte, geht das auch?
AW: Sortierung der Liste automatisch?
03.08.2020 07:11:23
Petra
perfekt, Damit geht das sehr gut :) Noch eine kleine Frage: Wenn ich jetzt bei allen Werten, außer den Doppelten, das Datum auf die Werte "01.01.2020" und "31.12.2020" setzen möchte, geht das auch?
Anzeige
AW: Sortierung der Liste automatisch?
03.08.2020 07:11:24
Petra
perfekt, Damit geht das sehr gut :) Noch eine kleine Frage: Wenn ich jetzt bei allen Werten, außer den Doppelten, das Datum auf die Werte "01.01.2020" und "31.12.2020" setzen möchte, geht das auch?
AW: Sortierung der Liste automatisch?
03.08.2020 07:11:24
Petra
perfekt, Damit geht das sehr gut :) Noch eine kleine Frage: Wenn ich jetzt bei allen Werten, außer den Doppelten, das Datum auf die Werte "01.01.2020" und "31.12.2020" setzen möchte, geht das auch?
AW: Sortierung der Liste automatisch?
03.08.2020 07:11:25
Petra
perfekt, Damit geht das sehr gut :) Noch eine kleine Frage: Wenn ich jetzt bei allen Werten, außer den Doppelten, das Datum auf die Werte "01.01.2020" und "31.12.2020" setzen möchte, geht das auch?
Anzeige
AW: Sortierung der Liste automatisch?
03.08.2020 07:11:25
Petra
perfekt, Damit geht das sehr gut :) Noch eine kleine Frage: Wenn ich jetzt bei allen Werten, außer den Doppelten, das Datum auf die Werte "01.01.2020" und "31.12.2020" setzen möchte, geht das auch?
AW: Sortierung der Liste automatisch?
03.08.2020 07:11:25
Petra
perfekt, Damit geht das sehr gut :) Noch eine kleine Frage: Wenn ich jetzt bei allen Werten, außer den Doppelten, das Datum auf die Werte "01.01.2020" und "31.12.2020" setzen möchte, geht das auch?
AW: Sortierung der Liste automatisch?
03.08.2020 07:11:37
Petra
perfekt, Damit geht das sehr gut :) Noch eine kleine Frage: Wenn ich jetzt bei allen Werten, außer den Doppelten, das Datum auf die Werte "01.01.2020" und "31.12.2020" setzen möchte, geht das auch?
Anzeige
AW: Sortierung der Liste automatisch?
03.08.2020 07:11:38
Petra
perfekt, Damit geht das sehr gut :) Noch eine kleine Frage: Wenn ich jetzt bei allen Werten, außer den Doppelten, das Datum auf die Werte "01.01.2020" und "31.12.2020" setzen möchte, geht das auch?
AW: Sortierung der Liste automatisch?
03.08.2020 07:11:38
Petra
perfekt, Damit geht das sehr gut :) Noch eine kleine Frage: Wenn ich jetzt bei allen Werten, außer den Doppelten, das Datum auf die Werte "01.01.2020" und "31.12.2020" setzen möchte, geht das auch?
AW: Sortierung der Liste automatisch?
03.08.2020 07:11:39
Petra
perfekt, Damit geht das sehr gut :) Noch eine kleine Frage: Wenn ich jetzt bei allen Werten, außer den Doppelten, das Datum auf die Werte "01.01.2020" und "31.12.2020" setzen möchte, geht das auch?
AW: Sortierung der Liste automatisch?
03.08.2020 07:11:39
Petra
perfekt, Damit geht das sehr gut :) Noch eine kleine Frage: Wenn ich jetzt bei allen Werten, außer den Doppelten, das Datum auf die Werte "01.01.2020" und "31.12.2020" setzen möchte, geht das auch?
AW: Sortierung der Liste automatisch?
03.08.2020 07:11:42
Petra
perfekt, Damit geht das sehr gut :) Noch eine kleine Frage: Wenn ich jetzt bei allen Werten, außer den Doppelten, das Datum auf die Werte "01.01.2020" und "31.12.2020" setzen möchte, geht das auch?
AW: Sortierung der Liste automatisch?
03.08.2020 07:13:40
Petra
perfekt, Damit geht das sehr gut :) Noch eine kleine Frage: Wenn ich jetzt bei allen Werten, außer den Doppelten, das Datum auf die Werte "01.01.2020" und "31.12.2020" setzen möchte, geht das auch?
AW: Sortierung der Liste automatisch?
03.08.2020 07:13:41
Petra
perfekt, Damit geht das sehr gut :) Noch eine kleine Frage: Wenn ich jetzt bei allen Werten, außer den Doppelten, das Datum auf die Werte "01.01.2020" und "31.12.2020" setzen möchte, geht das auch?
AW: Sortierung der Liste automatisch?
03.08.2020 20:01:23
Günther
Moin,
mit der "grünen Tabelle" ist gewiss das Ergebnis des PQ gemeint ...
In Power Query gibt es im Menü Transformieren beim Symbol Datum auch Jahr|Anfang des Jahres und |Ende des Jahres. Das könnte zielführend sein.
 
Gruß
Günther  |  mein Excel-Blog
AW: Sortierung der Liste automatisch?
03.08.2020 07:13:42
Petra
perfekt, Damit geht das sehr gut :) Noch eine kleine Frage: Wenn ich jetzt bei allen Werten, außer den Doppelten, das Datum auf die Werte "01.01.2020" und "31.12.2020" setzen möchte, geht das auch?
AW: Sortierung der Liste automatisch?
03.08.2020 07:13:42
Petra
perfekt, Damit geht das sehr gut :) Noch eine kleine Frage: Wenn ich jetzt bei allen Werten, außer den Doppelten, das Datum auf die Werte "01.01.2020" und "31.12.2020" setzen möchte, geht das auch?
AW: Sortierung der Liste automatisch?
03.08.2020 07:13:42
Petra
perfekt, Damit geht das sehr gut :) Noch eine kleine Frage: Wenn ich jetzt bei allen Werten, außer den Doppelten, das Datum auf die Werte "01.01.2020" und "31.12.2020" setzen möchte, geht das auch?
AW: Sortierung der Liste automatisch?
03.08.2020 13:43:12
Werner
Hallo,
meinst du so?
Sub Makro2()
Dim loLetzte As Long, loSpalte As Long
Application.ScreenUpdating = False
With ThisWorkbook.Worksheets("Tabelle1")
loLetzte = .Cells(.Rows.Count, "A").End(xlUp).Row
loSpalte = .Cells(1, .Columns.Count).End(xlToLeft).Offset(, 1).Column
.Sort.SortFields.Clear
.Sort.SortFields.Add Key:=.Range("F2:F" & loLetzte), SortOn:=xlSortOnValues, _
Order:=xlAscending, DataOption:=xlSortNormal
With .Sort
.SetRange Range("A1:G" & loLetzte)
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.Apply
End With
.Range("$A$1:$G$" & loLetzte).RemoveDuplicates Columns:=Array(2, 3, 4, 5), _
Header:=xlYes
loLetzte = .Cells(.Rows.Count, "A").End(xlUp).Row
.Range(.Cells(2, loSpalte), .Cells(loLetzte, loSpalte)).FormulaLocal = _
"=WENN(ZÄHLENWENN($B:$B;$B2)>1;$F2;""01.01.2020"")*1"
.Range(.Cells(2, loSpalte + 1), .Cells(loLetzte, loSpalte + 1)).FormulaLocal = _
"=WENN(ZÄHLENWENN($B:$B;$B2)>1;$G2;""31.12.2020"")*1"
.Range(.Cells(2, loSpalte), .Cells(loLetzte, loSpalte + 1)).Value = _
.Range(.Cells(2, loSpalte), .Cells(loLetzte, loSpalte + 1)).Value
.Range(.Cells(2, loSpalte), .Cells(loLetzte, loSpalte + 1)).Copy .Range("F2")
.Range(.Cells(2, loSpalte), .Cells(loLetzte, loSpalte + 1)).ClearContents
End With
End Sub
Gruß Werner
AW: Sortierung der Liste automatisch?
04.08.2020 07:32:48
Petra
Hallo Werner,
ich kann nicht ganz erkennen wie das funktioniert. Wie setze ich das denn in meine Tabelle ein? Also anbei ist ja die Datei...
https://www.herber.de/bbs/user/139448.xlsx
AW: Sortierung der Liste automatisch?
04.08.2020 09:02:52
Werner
Hallo,
muss denn das Ergebnis aus der oberen Tabelle in die untere Tabelle oder kann das Ergebnis auch direkt in der oberen Tabelle dargestellt werden und die untere Tabelle könnte dann entfallen?
Gruß Werner
AW: Sortierung der Liste automatisch?
05.08.2020 10:13:53
Petra
Hallo Werner, am besten sollte es in die neue Tabelle rein geschrieben werden wenn das geht?
AW: Sortierung der Liste automatisch?
05.08.2020 12:22:32
Werner
Hallo,
hier deine Datei zurück. Es ist eine reine Makro-Lösung, ohne PowerQuery.
Die intelligente Tabelle ("Tabelle1_2") muß auf dem Blatt schon vorhanden sein.
https://www.herber.de/bbs/user/139478.xlsm
Gruß Werner
AW: Sortierung der Liste automatisch?
06.08.2020 14:47:50
Petra
Hallo Werner,
vielen lieben Dank! Die letze Kleinigkeit probiere ich selber aus. Leider setzt das Macro auch z. T. die doppelten Datensätze (z. B. hier "Reis" auf den 01.01.-31.12.2020), bei den in der Output-Liste mehrfach vorkommenden Datensätzen soll es aber das Ursprungsdatum beibehalten
AW: Sortierung der Liste automatisch?
06.08.2020 16:24:49
Werner
Hallo,
mein Fehler, die Formeln, die über das Makro eingetragen werden waren falsch.
Ersetz mal den Teil im Makro durch diesen hier:
.Range(.Cells(loErste, loSpalte), .Cells(loLetzte, loSpalte)).FormulaLocal = _
"=WENN(ZÄHLENWENN($B$" & loErste & ":$B$" & loLetzte & ";$B" & loErste & ")>1;$F" _
& loErste & ";""01.01.2020"")*1"
.Range(.Cells(loErste, loSpalte + 1), .Cells(loLetzte, loSpalte + 1)).FormulaLocal = _
"=WENN(ZÄHLENWENN($B$" & loErste & ":$B$" & loLetzte & ";$B" & loErste & ")>1;$G" _
& loErste & ";""31.12.2020"")*1"
Gruß Werner
=EINDEUTIG(SORTIEREN(A2:G9;{2;6}))
02.08.2020 18:38:24
lupo1
Ich habe dabei nach dem Produkt und nach dem Anfangsdatum sortiert. Ein Eintrag Milch fällt dann über EINDEUTIG weg.
Mit bedingter Formatierung könnte man nun noch die Zweit-Einträge unsichtbar machen, damit die Tabelle strukturierter und leichter lesbar ist.
Pivot
02.08.2020 19:29:07
lupo1
Mit einer Einschränkung klappt es - anders, als mit EINDEUTIG, weil dort 7 (statt richtig 6) der 8 Datensätze übrigbleiben - auch mit Pivot: Die Zeiträume überlappen sich nicht, bzw. das späteste Ende korrespondiert mit dem spätesten Anfang.
Dann:
Spalten A:E in "Zeilen". (Ergebnisse: "Keine" auswählen)
Spalten F:G in "Werte". (Max auswählen)

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige