Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1488to1492
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

Rückstandszahlen ermitteln

Rückstandszahlen ermitteln
05.05.2016 14:11:16
erichm
Hallo,
in Spalte A sind ab Zeile 3 bis Zeile xy Zahlen immer von 21 bis einschließlich 30 – in ganz unterschiedlicher Reihenfolge und Anzahl.
In Spalte B soll - von Zeile zu Zeile aufsteigend - ermittelt werden, wann die in der jeweiligen Spalte A stehende Zahl zuletzt in Spalte A steht.
Siehe Beispieltabelle: also wenn in A19 die Zahl 27 steht wird die Spalte A nach oben durchsucht bis zur Zahl 27 = A9; die Differenz ist 10, die 10 wird dann in B19 ermittelt.
Derzeit habe ich das durch eine WENN-Formel gelöst (der Bezug in den ersten Zeilen entsteht, weil ich die Formel in Zeile 20 erstellt und dann nach oben kopiert habe); diese müsste ich aber um ein mehrfaches erweitern, da der Rückstand durchaus auch mal 30 sein kann.
Vielleicht gibt es da eine bessere Lösung?
Eine Lösung benötige ich aber für diese Berechnung: In Spalte B stehen die ermittelten Rückstände. Jetzt möchte ich jeweils ermitteln, wann die „Rückstandszahl“ der Spalte B zuletzt aufgetreten ist. Dabei geht dies immer von der letzten Zeile aus (im Beispiel Zeile 20). Die Lösungen habe ich farblich markiert – auf eine Formel bin ich aber leider nicht gekommen.
rückwärts

 ABCDEFGHIJKLMNO
1               
2ZahlenRückstand             
325#BEZUG!             
426#BEZUG!             
529#BEZUG!             
621#BEZUG!             
7211             
8264             
927#BEZUG!             
10257             
11296             
1230#BEZUG!             
13216             
1423FALSCH             
15212             
1622FALSCH             
17221             
18306wann zuletzt
19271012345678910111213
2028FALSCH46 13 311  2   

Formeln der Tabelle
ZelleFormel
B3=WENN(A3=A2;1;WENN(A3=A1;2;WENN(A3=#BEZUG!;3;WENN(A3=#BEZUG!;4;WENN(A3=#BEZUG!;5;WENN(A3=#BEZUG!;6;WENN(A3=#BEZUG!;7;WENN(A3=#BEZUG!;8;WENN(A3=#BEZUG!;9;WENN(A3=#BEZUG!;10;WENN(A3=#BEZUG!;11;WENN(A3=#BEZUG!;12;WENN(A3=#BEZUG!;13)))))))))))))
B4=WENN(A4=A3;1;WENN(A4=A2;2;WENN(A4=A1;3;WENN(A4=#BEZUG!;4;WENN(A4=#BEZUG!;5;WENN(A4=#BEZUG!;6;WENN(A4=#BEZUG!;7;WENN(A4=#BEZUG!;8;WENN(A4=#BEZUG!;9;WENN(A4=#BEZUG!;10;WENN(A4=#BEZUG!;11;WENN(A4=#BEZUG!;12;WENN(A4=#BEZUG!;13)))))))))))))
B5=WENN(A5=A4;1;WENN(A5=A3;2;WENN(A5=A2;3;WENN(A5=A1;4;WENN(A5=#BEZUG!;5;WENN(A5=#BEZUG!;6;WENN(A5=#BEZUG!;7;WENN(A5=#BEZUG!;8;WENN(A5=#BEZUG!;9;WENN(A5=#BEZUG!;10;WENN(A5=#BEZUG!;11;WENN(A5=#BEZUG!;12;WENN(A5=#BEZUG!;13)))))))))))))
B6=WENN(A6=A5;1;WENN(A6=A4;2;WENN(A6=A3;3;WENN(A6=A2;4;WENN(A6=A1;5;WENN(A6=#BEZUG!;6;WENN(A6=#BEZUG!;7;WENN(A6=#BEZUG!;8;WENN(A6=#BEZUG!;9;WENN(A6=#BEZUG!;10;WENN(A6=#BEZUG!;11;WENN(A6=#BEZUG!;12;WENN(A6=#BEZUG!;13)))))))))))))
B7=WENN(A7=A6;1;WENN(A7=A5;2;WENN(A7=A4;3;WENN(A7=A3;4;WENN(A7=A2;5;WENN(A7=A1;6;WENN(A7=#BEZUG!;7;WENN(A7=#BEZUG!;8;WENN(A7=#BEZUG!;9;WENN(A7=#BEZUG!;10;WENN(A7=#BEZUG!;11;WENN(A7=#BEZUG!;12;WENN(A7=#BEZUG!;13)))))))))))))
B8=WENN(A8=A7;1;WENN(A8=A6;2;WENN(A8=A5;3;WENN(A8=A4;4;WENN(A8=A3;5;WENN(A8=A2;6;WENN(A8=A1;7;WENN(A8=#BEZUG!;8;WENN(A8=#BEZUG!;9;WENN(A8=#BEZUG!;10;WENN(A8=#BEZUG!;11;WENN(A8=#BEZUG!;12;WENN(A8=#BEZUG!;13)))))))))))))
B9=WENN(A9=A8;1;WENN(A9=A7;2;WENN(A9=A6;3;WENN(A9=A5;4;WENN(A9=A4;5;WENN(A9=A3;6;WENN(A9=A2;7;WENN(A9=A1;8;WENN(A9=#BEZUG!;9;WENN(A9=#BEZUG!;10;WENN(A9=#BEZUG!;11;WENN(A9=#BEZUG!;12;WENN(A9=#BEZUG!;13)))))))))))))
B10=WENN(A10=A9;1;WENN(A10=A8;2;WENN(A10=A7;3;WENN(A10=A6;4;WENN(A10=A5;5;WENN(A10=A4;6;WENN(A10=A3;7;WENN(A10=A2;8;WENN(A10=A1;9;WENN(A10=#BEZUG!;10;WENN(A10=#BEZUG!;11;WENN(A10=#BEZUG!;12;WENN(A10=#BEZUG!;13)))))))))))))
B11=WENN(A11=A10;1;WENN(A11=A9;2;WENN(A11=A8;3;WENN(A11=A7;4;WENN(A11=A6;5;WENN(A11=A5;6;WENN(A11=A4;7;WENN(A11=A3;8;WENN(A11=A2;9;WENN(A11=A1;10;WENN(A11=#BEZUG!;11;WENN(A11=#BEZUG!;12;WENN(A11=#BEZUG!;13)))))))))))))
B12=WENN(A12=A11;1;WENN(A12=A10;2;WENN(A12=A9;3;WENN(A12=A8;4;WENN(A12=A7;5;WENN(A12=A6;6;WENN(A12=A5;7;WENN(A12=A4;8;WENN(A12=A3;9;WENN(A12=A2;10;WENN(A12=A1;11;WENN(A12=#BEZUG!;12;WENN(A12=#BEZUG!;13)))))))))))))
B13=WENN(A13=A12;1;WENN(A13=A11;2;WENN(A13=A10;3;WENN(A13=A9;4;WENN(A13=A8;5;WENN(A13=A7;6;WENN(A13=A6;7;WENN(A13=A5;8;WENN(A13=A4;9;WENN(A13=A3;10;WENN(A13=A2;11;WENN(A13=A1;12;WENN(A13=#BEZUG!;13)))))))))))))
B14=WENN(A14=A13;1;WENN(A14=A12;2;WENN(A14=A11;3;WENN(A14=A10;4;WENN(A14=A9;5;WENN(A14=A8;6;WENN(A14=A7;7;WENN(A14=A6;8;WENN(A14=A5;9;WENN(A14=A4;10;WENN(A14=A3;11;WENN(A14=A2;12;WENN(A14=A1;13)))))))))))))
B15=WENN(A15=A14;1;WENN(A15=A13;2;WENN(A15=A12;3;WENN(A15=A11;4;WENN(A15=A10;5;WENN(A15=A9;6;WENN(A15=A8;7;WENN(A15=A7;8;WENN(A15=A6;9;WENN(A15=A5;10;WENN(A15=A4;11;WENN(A15=A3;12;WENN(A15=A2;13)))))))))))))
B16=WENN(A16=A15;1;WENN(A16=A14;2;WENN(A16=A13;3;WENN(A16=A12;4;WENN(A16=A11;5;WENN(A16=A10;6;WENN(A16=A9;7;WENN(A16=A8;8;WENN(A16=A7;9;WENN(A16=A6;10;WENN(A16=A5;11;WENN(A16=A4;12;WENN(A16=A3;13)))))))))))))
B17=WENN(A17=A16;1;WENN(A17=A15;2;WENN(A17=A14;3;WENN(A17=A13;4;WENN(A17=A12;5;WENN(A17=A11;6;WENN(A17=A10;7;WENN(A17=A9;8;WENN(A17=A8;9;WENN(A17=A7;10;WENN(A17=A6;11;WENN(A17=A5;12;WENN(A17=A4;13)))))))))))))
B18=WENN(A18=A17;1;WENN(A18=A16;2;WENN(A18=A15;3;WENN(A18=A14;4;WENN(A18=A13;5;WENN(A18=A12;6;WENN(A18=A11;7;WENN(A18=A10;8;WENN(A18=A9;9;WENN(A18=A8;10;WENN(A18=A7;11;WENN(A18=A6;12;WENN(A18=A5;13)))))))))))))
B19=WENN(A19=A18;1;WENN(A19=A17;2;WENN(A19=A16;3;WENN(A19=A15;4;WENN(A19=A14;5;WENN(A19=A13;6;WENN(A19=A12;7;WENN(A19=A11;8;WENN(A19=A10;9;WENN(A19=A9;10;WENN(A19=A8;11;WENN(A19=A7;12;WENN(A19=A6;13)))))))))))))
B20=WENN(A20=A19;1;WENN(A20=A18;2;WENN(A20=A17;3;WENN(A20=A16;4;WENN(A20=A15;5;WENN(A20=A14;6;WENN(A20=A13;7;WENN(A20=A12;8;WENN(A20=A11;9;WENN(A20=A10;10;WENN(A20=A9;11;WENN(A20=A8;12;WENN(A20=A7;13)))))))))))))


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4.8
Besten Dank für eine Hilfe.
Mit freundlichen Grüßen

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Rückstandszahlen ermitteln
05.05.2016 14:27:09
Arthur
Hallo Erich.
Diese Formel sollte funktionieren. Hier für I20:
{=VERGLEICH(1;(($B$3:$B$20)=I19)*1;0)}
Anmerkung: Die geschweiften Klammern per Strg+Shift+Eingabe erzeugen.
Gruß, Arthur.

AW: Rückstandszahlen ermitteln
05.05.2016 14:54:24
erichm
Danke Arthur - stimmt leider nicht.
Die Formel zählt von B3 aufwärts (= Ergebnis 8) und müsste aber von B20 rückwärts zählen = richtiges Ergebnis 11.
mfg

Vergleich von unten
05.05.2016 17:15:00
unten
Hi zusammen,
schreibe mal in B4 die MATRIX-Formel:
{=WENN(MAX((A$3:A3=A4)*ZEILE(A$3:A3))=0;"keiner";ZEILE()-MAX((A$3:A3=A4)*ZEILE(A$3:A3)))}
(die Formel wird ganz normal OHNE {} eingegeben und mit Strg-Umschalt-Enter abgeschlossen)
und kopiere sie bis B20.
In I20 kommt wiederum:
{=WENN(MAX(($B$3:$B$20=I19)*ZEILE($A$3:$A$20))0;ZEILE(G20)-MAX(($B$3:$B$20=I19)*ZEILE($A$3:$A$20)) +1;"") }
Datei: https://www.herber.de/bbs/user/105409.xls
Schöne Grüße,
Michael
P.S.: Tutorial zu Matrixformeln siehe z.B. hier
http://www.online-excel.de/excel/singsel.php?f=26

Anzeige
AW: Vergleich von unten
05.05.2016 18:16:18
unten
Hallo
anbei noch ein Makro Lösung die ich gerade entwickelt habe.
Unklar ist mir allerdings was bei: - wann zuletzt - ausgewertet wird.
Ob Formel oder Makro ist egal, Hauptsache die Lösung funktioniert.
mfg Piet
Option Explicit '5.5.2016 Piet für Herber Forum Dim Zell As Object 'Zelle A2:Axx Dim RSZ As Object 'Rückstand Zahl Dim SAdr As String 'Such Adresse Dim LRow As Long 'LastRow in "A" Sub Rückstand_ermitteln() With Worksheets("Tabelle8") 'LastRow in Spalte A ermitteln LRow = .Range("A2").End(xlDown).Row 'Spalte B alte Werte löschen .Range("B2:B" & LRow).ClearContents 'Suchschleife von A2:Axxx (End-Zelle) For Each Zell In .Range("A2:A" & LRow - 1) SAdr = Zell.Address 'fortlaufende Such Adresse Set RSZ = .Range("A2:A" & LRow).Find(What:=Zell, After:=.Range(SAdr), LookAt:=xlWhole) If Not RSZ Is Nothing Then 'nur positive Werte notieren!! If RSZ.Row - Zell.Row > 0 Then RSZ.Offset(0, 1) = RSZ.Row - Zell.Row End If End If Next Zell End With End Sub

Anzeige
AW: Vergleich von unten
05.05.2016 18:38:12
unten
DANKE - funktioniert hervorragend!
wann zuletzt: es wird die Spalte B von unten nach oben durchsucht.
Dann werden die Zeilen gezählt, bis die jeweilige Zahl immer erstmalig gefunden wird und das Ergebnis den jeweiligen Zahlen in den Spalten C bis O zugeordnet.
Also die 1 wird in der 4. Zeile von unten gefunden.
Hoffe das ist verständlich.
mfg

AW: Vergleich von unten
05.05.2016 18:32:28
unten
DANKE!!
Eine sehr komfortable und perfekte Lösung.
mfg

AW: Vergleich von unten
06.05.2016 11:49:50
unten
Ei vertippt. Du hast Recht. Die Formel hat der Frage entsprechend falsch gezählt. Hiermit sollte es aber funktionieren.
{=VERGLEICH(1;1/(($B$3:$B$20)=I19);1)}
Gruß, Arthur.

Anzeige
AW: Vergleich von unten
09.05.2016 06:53:16
unten
DANKE - an der Zählweise hat sich aber nichts geändert?
mfg

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige