Identifizieren der Spalte, in der der Wert unter 0 fällt


0

Ich versuche eine Formel zu finden, um zu identifizieren, in welcher Spalte der Wert unter 0 fällt.

Ich habe Tausende von Zeilen und Dutzende von Spalten, daher ist es keine Option, dies manuell zu tun

Also, wenn meine Spalten und Werte wie folgt sind:

    A   B   C   D
1   Jul Aug Sep Oct
2   25  10  5   -2
3   10  2   -6  -10

Für Zeile 2 möchte ich das Ergebnis "Oct" (oder 4 als 4. Spalte) zurückgeben, da dies der Monat ist, in dem der Wert unter 0 fällt. Für Zeile 3 möchte ich den Wert "Sep" (oder 3 als "Oct") zurückgeben die 3. Spalte).

Irgendwelche Ideen?


Wohin senden Sie das Ergebnis?
Raystafarian

In diesem einfachen Beispiel könnte es sich um Spalte E, Zeilen 2 und 3 handeln (wobei Zeile 1 die Spaltenüberschrift ist)
Dave Barnett,

Antworten:


1

Es ist wahrscheinlich etwas einfacher, INDEX / MATCH zu verwenden, z. B. diese Array-Formel in AV10

=INDEX(AW$1:BM$1,MATCH(TRUE,AW10:BM10<0,0))

bestätigt mit CTRL+ SHIFT+ENTER

Wenn Sie CSE vermeiden möchten, fügen Sie eine weitere INDEX-Funktion wie diese hinzu, und die Formel kann "normal" eingegeben werden.

=INDEX(AW$1:BM$1,MATCH(TRUE,INDEX(AW10:BM10<0,0),0))

Wenn es keine Zahlen <0 gibt, wird der Fehler # N / A zurückgegeben

=IFERROR(INDEX(AW$1:BM$1,MATCH(TRUE,INDEX(AW10:BM10<0,0),0)),"No negative numbers")


Danke vielmals! das hat perfekt funktioniert! du bist ein Star!
Dave Barnett

0

Sie können dies mit einer Matrixformel tun. Wählen Sie in Zeile 2 die Zelle aus, in der Sie die Formel haben möchten, fügen Sie Folgendes in die Bearbeitungsleiste ein und drücken Sie Ctrl+ Shift+ Enter.

=INDEX($A$1:$D$1,MIN(IF(A2:D2<0,COLUMN(A2:D2))))

Als Referenz A1:D1dient der Bereich der Spaltenüberschriften (Monate) und A2:D2die Werte in der Zeile. Diese Formel sucht nach Werten unter 0 und nimmt dann den Wert mit der kleinsten Spaltennummer. Anschließend wird die Monatsüberschrift in dieser Spaltennummer zurückgegeben.

Diese Formel kann bis zu allen Zeilen ausgefüllt werden.

BEARBEITEN:
Wenn Ihre Daten nicht in Spalte A beginnen, müssen Sie die Formel geringfügig anpassen, damit sie funktionieren. In der Formel bleibt alles gleich, außer dass das erste Argument der INDEXFunktion auf Spalte A erweitert werden muss. Wenn Ihre Daten beispielsweise in Spalte C beginnen, würden Sie stattdessen die folgende Formel verwenden (als Matrixformel eingegeben).

=INDEX($A$1:$F$1,MIN(IF(C2:F2<0,COLUMN(C2:F2))))

Der Grund dafür ist, dass das INDEXzweite Argument der Funktion die Position im Array angibt, nicht unbedingt die Spaltennummer. Diese Unterscheidung wird aufgehoben, wenn Sie das Array nur bis zur Spalte A ausdehnen (dh die Position im Array entspricht der Spaltennummer).


Hi danke dafür ... funktioniert aber nicht ganz. Ich habe die Formel = INDEX (AW $ 1: BM $ 1, MIN (IF (AW10: BM10 <0, COLUMN (AW10: BM10))) in Zelle AV10 eingegeben, da meine Testdaten im Bereich AW10: BM10 liegen. ... die Titel befinden sich in Zeile 1. Die erste Spalte, in der die Daten unter 0 fallen, ist BM. Wenn ich die obige Formel eingebe, wird der Fehler #WERT! Zurückgegeben .... irgendwelche Ideen?
Nochmals

Tut mir leid, dass ich auf "Zurück" geklickt habe, bevor ich meine Antwort beendet habe: - /
Dave Barnett

Ah ok, das Problem ist, dass Ihre Daten nicht in Spalte A beginnen, wie Ihr Beispiel gezeigt hat. Versuchen Sie stattdessen: =INDEX(A$1:BM$1,MIN(IF(AW10:BM10<0,COLUMN(AW10:BM10)))).
Hervorragend
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.