habe die Datei gerade heruntergeladen, ist machbar, brauche aber etwas Zeit dafür.
Habe noch einen anderen kniffligen Thread offeni den ich vorrangig bearbeiten muss.
Kann 1-2 Tage dauern, melde mich wieder wenn ich soweit bin.
anbei die Beispieldatei mit geandertem Makro zurück. Ich musste zwei getrennte Makros schreiben, weil wir in jedem Produkt Blatt zwei verschiedene Jahrgaenge haben. Leider konnten ich mit den wenigen Beispieldaten das Makro nicht testen ob es Fehlerfrei funktioniert. Bitte selbst ausgiebig testen.
Neu eingefügt habe ich eine Sortierroutine für die Ergebnisspalte. Und es gibt ein zusaetzliches Prüfmakro mit dem man in der Tabelle Auswertung prüfen kann ob Artikel Nr. doppelt vorkommen. (Im Augenblick sind fast alle doppelt)
Würde mich sehr freuen wenn diese Lösung euch die Arbeit wesentlich erleichtert. Bis dann ....
18.02.2017, 18:43 (Dieser Beitrag wurde zuletzt bearbeitet: 18.02.2017, 18:43 von tw3aker.)
(18.02.2017, 17:11)Gast 123 schrieb: Hallo,
anbei die Beispieldatei mit geandertem Makro zurück. Ich musste zwei getrennte Makros schreiben, weil wir in jedem Produkt Blatt zwei verschiedene Jahrgaenge haben. Leider konnten ich mit den wenigen Beispieldaten das Makro nicht testen ob es Fehlerfrei funktioniert. Bitte selbst ausgiebig testen.
Neu eingefügt habe ich eine Sortierroutine für die Ergebnisspalte. Und es gibt ein zusaetzliches Prüfmakro mit dem man in der Tabelle Auswertung prüfen kann ob Artikel Nr. doppelt vorkommen. (Im Augenblick sind fast alle doppelt)
Würde mich sehr freuen wenn diese Lösung euch die Arbeit wesentlich erleichtert. Bis dann ....
mfg Gast
Hey Gast 123,
wow krass, das wird mir zukünftig richtig weiter helfen.
Habe die Datei jetzt mal mit realistischen werten gefüttert.
Dann habe ich aus Interesse mal suchen wollen.
dann kam der Fehler: Set rFind = ATB.Columns("J").FindNext(After:=Range(nAdr))
In J steht nicht immer etwas drin.
Ich habe gemerkt, dass die Datei dann ab c12 nicht mehr weiter listet. ergo nur a und b ausfüllt, soweit er sucht bzw. findet und dann nicht mehr weiter. Woran kann das hängen?
Sorry, die dummen kleinen Flüchtigkeitsfehler, wenn man zu faul ist 2 neue Variable zu deklarieren! Und versehentlich zwei staendig benötigte Variable mit falschen Werten überschreibt! Nun ja, passiert, korrigieren wir es! s. unten
Oben unter Option Explicit zwei neue Variable deklrieren, unter den vorhanden Dim Liter + Artikel - bitte neu einfügen: Dim SAdr1 + SAdr2
Danach die Sortierroutine am Makro Ende komplett gegen den neuen Code auswechseln. Bitte in beiden Modulen für Block1 + Block2 tauschen.
Danach sollte es laufen. Viel Glück
mfg Gast 123
Code:
'unter Liter zwei neue Variable einfügen:
Dim Liter As Variant, Artikel As Variant
Dim SAdr1 As String, SAdr2 As String
'** neu eingefügt 18.2.2017
'aktive Spalte nach Datum + Ststückzahl sortieren
SAdr1 = Range("A12").Offset(0, k - 1).Address
SAdr2 = Range("A12").Offset(0, k - 0).Address
Range("A12:B45").Offset(0, k - 1).Sort Key1:=Range(SAdr1), Order1:=xlAscending, _
Key2:=Range(SAdr2), Order1:=xlAscending, Header:=xlNo, OrderCustom:=1, _
Orientation:=xlTopToBottom, DataOption1:=xlSortNormal
19.02.2017, 00:27 (Dieser Beitrag wurde zuletzt bearbeitet: 19.02.2017, 00:27 von tw3aker.)
(18.02.2017, 19:37)Gast 123 schrieb: Hallo,
Sorry, die dummen kleinen Flüchtigkeitsfehler, wenn man zu faul ist 2 neue Variable zu deklarieren! Und versehentlich zwei staendig benötigte Variable mit falschen Werten überschreibt! Nun ja, passiert, korrigieren wir es! s. unten
Oben unter Option Explicit zwei neue Variable deklrieren, unter den vorhanden Dim Liter + Artikel - bitte neu einfügen: Dim SAdr1 + SAdr2
Danach die Sortierroutine am Makro Ende komplett gegen den neuen Code auswechseln. Bitte in beiden Modulen für Block1 + Block2 tauschen.
Danach sollte es laufen. Viel Glück
mfg Gast 123
Code:
'unter Liter zwei neue Variable einfügen:
Dim Liter As Variant, Artikel As Variant
Dim SAdr1 As String, SAdr2 As String
'** neu eingefügt 18.2.2017
'aktive Spalte nach Datum + Ststückzahl sortieren
SAdr1 = Range("A12").Offset(0, k - 1).Address
SAdr2 = Range("A12").Offset(0, k - 0).Address
Range("A12:B45").Offset(0, k - 1).Sort Key1:=Range(SAdr1), Order1:=xlAscending, _
Key2:=Range(SAdr2), Order1:=xlAscending, Header:=xlNo, OrderCustom:=1, _
Orientation:=xlTopToBottom, DataOption1:=xlSortNormal
Danke!!! Fast perfekt!!! jetzt nur noch eine Frage, unter Artikel Nr. ist ja jetzt nur der bereich 3-6 glaube ich abgedeckt. kann man das bis 9 erweitern? Also B4-B9??
SORRY, gefunden, mein Fehler!!! Es ist Perfekt!!! Danke!!
(19.02.2017, 00:27)tw3aker schrieb: Danke!!! Fast perfekt!!! jetzt nur noch eine Frage, unter Artikel Nr. ist ja jetzt nur der bereich 3-6 glaube ich abgedeckt. kann man das bis 9 erweitern? Also B4-B9??
SORRY, gefunden, mein Fehler!!! Es ist Perfekt!!! Danke!!
Danke und Gruß
Ok Gast 123,
eine Frage habe ich noch, kann ich auch ein Reiter erstellen, der ohne Jahrgang agiert?
Ja, mach mir bitte ein Muster mit allen Spalten/Zeilen, wie du dir das vorstellst, wie die Lösung aussehen soll, und welche Daten ich dafür auswerten muss??
Den Rest macht das Makro. Noch einen schönen Sonntag.
Hallo Gast 123,
Danke nochmals, für deine Hilfe.
Artikel doppelt brauche ich nicht unbedingt.
Habe das was ich meine als 5. Blatt eingefügt. Rechts steht dran ohne Jahrgang. Könnte kniffelig werden denke ich
Gruß
Upps, da muss ich doch ganz höflich fragen: wo ist da der Unterschied, und was ist "advancedFilter" ???
Ich dachte bisher das sei AutoFilter. Liege ich da falsch?? Verwechsle ich da jetzt etwas??