Próbuję znaleźć formułę identyfikującą, w której kolumnie wartość spada poniżej 0.
Mam tysiące wierszy i dziesiątki kolumn, więc zrobienie tego ręcznie nie jest opcją
Więc jeśli moje kolumny i wartości są następujące:
A B C D
1 Jul Aug Sep Oct
2 25 10 5 -2
3 10 2 -6 -10
Tak więc w wierszu 2 chciałbym zwrócić wynik „Oct” (lub 4 jako czwarta kolumna), ponieważ w tym miesiącu wartość spada poniżej 0. W wierszu 3 chciałbym zwrócić wartość „Sep” (lub 3 jako trzecia kolumna).
Jakieś pomysły?
microsoft-excel
microsoft-excel-2010
Dave Barnett
źródło
źródło
Odpowiedzi:
Prawdopodobnie nieco łatwiej jest użyć INDEX / MATCH, np. Tej formuły tablicowej w AV10
=INDEX(AW$1:BM$1,MATCH(TRUE,AW10:BM10<0,0))
potwierdzone za pomocą CTRL+ SHIFT+ENTER
lub jeśli wolisz unikać CSE, dodaj następną funkcję INDEKSU, a formułę można wpisać „normalnie”
=INDEX(AW$1:BM$1,MATCH(TRUE,INDEX(AW10:BM10<0,0),0))
Jeśli nie ma liczb <0, to zwróci błąd # Nie dotyczy ...... lub możesz użyć funkcji JEŻELI, aby zastąpić tekstem, np.
=IFERROR(INDEX(AW$1:BM$1,MATCH(TRUE,INDEX(AW10:BM10<0,0),0)),"No negative numbers")
źródło
Możesz to zrobić za pomocą formuły tablicowej. W wierszu 2 wybierz komórkę, w której chcesz formułę, wklej następujące elementy na pasku formuły i naciśnij Ctrl+ Shift+ Enter.
Dla odniesienia
A1:D1
jest to zakres nagłówków kolumn (miesiące) iA2:D2
są wartościami w wierszu. Ta formuła szuka wartości mniejszych niż 0, a następnie przyjmuje tę o najmniejszym numerze kolumny. Następnie zwraca nagłówek miesiąca w tym numerze kolumny.Ten wzór można wypełnić do wszystkich wierszy.
EDYCJA:
Jeśli twoje dane nie zaczynają się w kolumnie A, będziesz musiał dokonać niewielkiej korekty formuły, aby działała. W formule wszystko pozostaje takie samo, z wyjątkiem tego, że pierwszy argument
INDEX
funkcji musi zostać rozszerzony na kolumnę A. Na przykład, jeśli dane zaczynają się w kolumnie C, wówczas zamiast tego użyłbyś następującej formuły (wprowadzonej jako formuła tablicowa).Powodem tego jest to, że
INDEX
drugi argument funkcji wskazuje pozycję w tablicy, niekoniecznie numer kolumny. To rozróżnienie jest zatarte, jeśli po prostu rozszerzysz tablicę aż do kolumny A (tj. Pozycja w tablicy będzie równa numerowi kolumny).źródło
=INDEX(A$1:BM$1,MIN(IF(AW10:BM10<0,COLUMN(AW10:BM10))))
.