Forum: PC Hard- und Software Libre Calc Maxwert aus Matrix kleiner 0


von Baste R. (basterix)


Lesenswert?

Servus zusammen,

ich versuche mit Libre Calc aus ein paar Zahlen den negativen Wert zu 
ermitteln, der Null am nächsten ist.

ZB:
      A  B  C

1|    1  2  3
2|   -2 -5 -6
3|    5  7  3

=MAX(A1:C3<0)

Eigentlich erwarte ich das Ergebnis -2 bekomme aber #WERT!

Hat jemand eine Idee was ich falsch mache?

Ich arbeite mit Libre 4.0.4.2

Danke schonmal! :)

: Bearbeitet durch User
von K.B. (Gast)


Lesenswert?

Die MAX-Formel nimmt nur einen Zellbereich entgegen, keine zusätzlichen 
Filter auf die Werte in dem Bereich.

Einfacher: Das "<0" funktioniert nicht.

Weil's eine schöne sportliche Herausforderung für die Mittagspause ist, 
hab ich's mal in einer Zeile gelöst:

=MAX(WENN(A1:C3>=0;MIN(A1:C3);A1:C3))

Array-Formel. Also mit Strg-Return abschließen. Geht vielleicht auch 
irgendwie einfacher, aber das war gerade am spaßigsten ;)

von K.B. (Gast)


Lesenswert?

Zusatz: Falls die Matrix keine negativen Zahlen enthält, liefert die 
Formel einfach das globale Minimum.

von Baste R. (basterix)


Lesenswert?

Deine Lösung funktioniert perfekt, dank dir! :)

Ich habs aus Verzweifelung jetzt mit SCILAB gelöst.

Angenehme MiPa noch!  :)

von Guido C. (guidoanalog)



Lesenswert?

Hallo,

eins vorweg, ich arbeite nicht mit Libre 4.0.4.2, sondern mit EXCEL 
2003. Vielleicht kann ich Dir dennoch helfen.

Baste Rix schrieb:
> =MAX(A1:C3<0)

Selbst wenn dieser Ansatz funktionieren würde, würdest Du nur den 
booleschen Wert "0" oder "1" als Ergebnis bekommen. Der Vergleich "<0" 
liefert nur das Ergebnisse, ob der betreffende Wert kleiner oder 
größer/gleich Null ist.

Letztlich suchst Du den ersten Wert unterhalb der Schwelle "0". Gibt es 
hierfür in Libre eine vordefiniert Funktion?

Eine mögliche Lösung, die sich sicher auch mit Libre realisieren lässt, 
ist eine Matrix anzulegen, in der die positive bzw. Nullwerte durch den 
kleinsten Wert der Ausgangsmatrix ersetzt wurden. Ausgehend von dieser 
Matrix müsstest lediglich der größte Wert gesucht werden.

In EXCEL lässt sich dein Problem recht elegant mit einer sog. 
Arrayformel lösen.

Mit freundlichen Grüßen
Guido

von Baste R. (basterix)


Lesenswert?

Hi Guido,

vielen dank für die ausführliche Erläuterung.

Tatsächlich ist meine Matrix um ein paar Werte größer - die Arrayformel 
ist daher sehr Attraktiv :)

Gruß
B.

von Guido C. (guidoanalog)


Lesenswert?

Hallo,

Baste Rix schrieb:
> Tatsächlich ist meine Matrix um ein paar Werte größer - die Arrayformel
> ist daher sehr Attraktiv :)

da gebe ich Dir recht. Es war mir nur nicht klar, ob Libre 4.0.4.2 auch 
Arrayformeln kennt.

Mit freundlichen Grüßen
Guido

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.