INDEX / MATCH z wieloma kryteriami, w tym zakresem dat

0

Próbuję wyciągnąć ceny na podstawie tego, czy kod pasuje, i czy data mieści się w określonym zakresie.

Chcę wyciągnąć kolumnę w Hoparciu o następujące warunki:

  • Kolumny Ai Fdopasowanie
  • Kolumna Gjest pomiędzy lub równa kolumnom BiC

Uznałem, że formuła tablicowa z INDEX/ MATCHbyłaby najlepszą metodą, ale jak dotąd nie odniosła sukcesu.

Próbowałem formuły przy użyciu logiki podobnej do tej:

{=INDEX(H2:H10, MATCH(1, IF(A2=F2:F10,IF(B2<=G2:G10,IF(C2>=G2:G10,1),0),0),0))}


Przykładowe zdjęcie

Ramzi Saud
źródło
czy pojawią się duplikaty informacji spełniające kryteria? jeśli nie, SUMIFS będzie łatwiejszy i skuteczniejszy.
Scott Craner
Tak, są niestety duplikaty.
Ramzi Saud

Odpowiedzi:

0

Jeśli chcesz pierwszy, użyj tej formy tablicy INDEKSU:

=INDEX($H$2:$H$10,MATCH(1,(($F$2:$F$10=A2)*($G$2:$G$10>=B2)*($G$2:$G$10<=C2)),0))

Będąc formułą tablicową, należy wyjść z trybu edycji za pomocą Ctrl-Shift-Enter zamiast Enter.

wprowadź opis zdjęcia tutaj

Scott Craner
źródło
0

Jeśli chcesz uzyskać wszystkie pasujące ceny, możesz użyć TEXTJOIN()funkcji:

Zrzut ekranu z arkusza roboczego

Tablica wprowadź następującą formułę D3i skopiuj-wklej / wypełnij kolumnę:

{=TEXTJOIN(", ",TRUE,IFERROR(1/(1/(($F$2:$F$10=A2)*($G$2:$G$10>=B2)*($G$2:$G$10<=C2)*($H$2:$H$10))),""))}

Uwaga: TEXTJOIN()jest dostępna tylko w programie Excel 2016. We wcześniejszych wersjach programu Excel wymagana jest funkcja UDF z wielokrotnym wypełnianiem. (Zobacz ten post dla podstawowego.)

robinCTS
źródło