Microsoft Excel

Herbers Excel/VBA-Archiv

Nächste kleinere Zahl in Spalte suchen...


Betrifft: Nächste kleinere Zahl in Spalte suchen... von: Bernd
Geschrieben am: 17.10.2017 18:29:08

Ich würde gerne folgende Formel in der Zelle D3 verallgemeinern auf die nächsten n Zahlen in einer Spalte, die im Beispiel unterhalb der Zelle C3 stehen. Hier im Beispiel werden die nächsten 20 Zellen in der Spalte C nacheinander abgefragt, um den Zeilenabstand zu ermitteln.
Falls die nächsten n = 20 Zellen in der Spalte C unterhalb von C3 alle nicht kleiner sind, dann soll die Zahl 21 bzw. n + 1 ausgegeben werden.

Kann mir jemand mit einer schlankeren Formel weiterhelfen...?

=WENN(C4<C3;1;WENN(C5<C3;2;WENN(C6<C3;3;WENN(C7<C3;4;WENN(C8<C3;5; WENN(C9<C3;6; WENN(C10<C3;7; WENN(C11<C3;8;WENN(C12<C3;9;WENN(C13< C3; 10; WENN(C14<C3;11; WENN(C15<C3; 12; WENN(C16<C3;13; WENN(C17<C3;14; WENN(C18<C3;15; WENN(C19<C3;16; WENN(C20<C3;17; WENN(C21<C3; 18; WENN(C22< C3;19; WENN(C23<C3;20;21)) ))))))))))))))))) )

Beste Grüße

Bernd

  

Betrifft: AW: Nächste kleinere Zahl in Spalte suchen... von: Daniel
Geschrieben am: 17.10.2017 18:44:25

Hi
beispielsweise sowas:

=WENNFEHLER(AGGREGAT(15;6;(ZEILE(C4:C23)-ZEILE(C3))/((C4:C23)<C3);1);ZEILEN(C4:C23)+1)

Gruß Daniel


  

Betrifft: AW: mit AGGREGAT() ... von: ... neopa C
Geschrieben am: 17.10.2017 18:48:37

Hallo Bernd,

... so:

=AGGREGAT(15;6;ZEILE(C1:C21)/(C4:C24 < C3);1)
Gruß Werner
.. , - ...


  

Betrifft: AW: und wenn auch in C24 eine Zahl steht ... von: ... neopa C
Geschrieben am: 17.10.2017 18:55:44

Hallo,

.. die auch größer als C3 sein könnte, dann

=WENNFEHLER(AGGREGAT(15;6;ZEILE(C1:C21)/(C4:C24 < C3);1);21)
Gruß Werner
.. , - ...


  

Betrifft: mit MIN von: WF
Geschrieben am: 17.10.2017 21:05:53

Hi,

{=MIN(WENN(C4:C23<C3;ZEILE(X1:X20)))+(MIN(C4:C23)>=C3)*21}

WF


  

Betrifft: AW: mögl. Leerzellen noch nicht berücksichtigt owT von: ... neopa C
Geschrieben am: 17.10.2017 22:29:59

Gruß Werner
.. , - ...


  

Betrifft: banal ...+(MIN(C4:C23*1)>=... von: WF
Geschrieben am: 18.10.2017 12:11:11

.


  

Betrifft: AW: und was bei evtl. vorh.: ="" - Werten? ... von: ... neopa C
Geschrieben am: 18.10.2017 13:56:40

Hallo WF,

... wenn nämlich nur echte Zahlenwerte auszuwerten wären, könnte ich auf Basis von MMULT() eine noch einfachere, wie auch kürzere (als meine bisherigen bereits aufgezeigten Formelversionen) und trotzdem {}-freie Formelversion anbieten.

Gruß Werner
.. , - ...


  

Betrifft: Die Datei kennt der Fragesteller - Du nicht von: WF
Geschrieben am: 18.10.2017 14:18:50

ENDE


  

Betrifft: AW: Du kennst diese aber auch nicht! owT von: ... neopa C
Geschrieben am: 18.10.2017 19:44:20

Gruß Werner
.. , - ...


  

Betrifft: ENDE von: WF
Geschrieben am: 18.10.2017 19:59:11

.


  

Betrifft: AW: noch eine {} freie Variante ohne AGGREGAT()... von: ... neopa C
Geschrieben am: 17.10.2017 23:01:22

Hallo,

... wenn in C24 noch eine Zahl steht die gleich, größer als C3 sein kann, so:

=WENNFEHLER(VERGLEICH(1;INDEX((C3-C4:C23>0)*1;);0);21) 
oder wenn zumindest C24 leer ist einfach so:
=VERGLEICH(1;INDEX((C3-C4:C24>0)*1;);0)
Gruß Werner
.. , - ...


Beiträge aus den Excel-Beispielen zum Thema "Nächste kleinere Zahl in Spalte suchen..."