Jak używać = WYSZUKAJ.PIONOWO w tych okolicznościach?


0

Wiem więc, jak używać = WYSZUKAJ.PIONOWO, gdy szukasz pojedynczej wartości w komórce, ale nie jestem pewien, jak to zrobić, gdy mam zakres, np. powiedzmy, że wartość komórek to 1-5, następne to 5-10.

wprowadź opis zdjęcia tutaj

To jest tabela, którą próbuję wyszukać. Normalna formuła nie działa dla mnie, po prostu pojawia się błąd # N / A. Czy używam niewłaściwej funkcji wyszukiwania?


Jeśli wiesz, że będziesz mieć tylko liczby całkowite, możesz po prostu sprawić, by twoja tabela odnośników miała osobne wiersze dla 1, 2, 3, 4, 5 itd. . . Twój obecny przypadek użycia jest na tyle mały, że nie byłoby to zbyt trudne. . . setki zapisów może to utrudnić
ernie

@ernie Wiem, ale potrzebuję, aby tak było.
Matt327,

Możesz podzielić swój zakres na min / maks, a następnie użyć kolumny min, aby dopasować. . . domyślnie WYSZUKAJ.PIONOWO wyszuka dokładne dopasowanie lub „ następną największą wartość, która jest mniejsza niż wartość_wyszukania ”. . . jeśli potrzebujesz czegoś innego, musisz wyjaśnić swoje pytanie.
ernie

@ernie, jak powiedziałem, nie może ponownie sformatować tabeli odnośników. Czy zatem używam niewłaściwej funkcji?
Matt327,

Jeśli nie możesz w ogóle zmienić tabeli odnośników, czy możesz użyć niektórych komórek pod kontrolą, aby odwoływać się do komórek „tylko do odczytu”, a następnie zmodyfikować nowe komórki, aby móc wykonać vlookup?
Kenneth L

Odpowiedzi:


1

Zakładając, że twoja wartość wyszukiwania znajduje się w I2:

=VLOOKUP(IF(I2<=5, "1-5", IF(I2<=10, "6-10", IF(I2<=20, "'11-20", "21 or more"))),B2:C5,2,TRUE)

Tyle że w moim Excelu nie traktuje tego 11-20 jako tekstu i nazywa go „datą tekstową z dwucyfrowym rokiem”. Z tego powodu formuła nie działa dla 11-20. Opuszczę 90% rozwiązanie na wypadek, gdyby ktoś znał rozwiązanie problemu „tekst to 2-cyfrowy rok”.


Zauważ, że ta formuła działa dla 11-20, jeśli zrobisz Dane-> Tekst do kolumn i zmusisz kolumnę B jako naprawdę prosty tekst. Nie ma sposobu, aby dowiedzieć się, czy zrzut ekranu OP jest naprawdę tekstowy, czy nie.
Madball73

hę próbowałem tego bez radości. jutro
spróbuje jeszcze raz

0

Działa to, jeśli szukana liczba znajduje się w komórce, C1a tabela zaczyna się odA1

=VLOOKUP(IF(C1>20,"21 or more",IF(C1>10,"11-20",IF(C1>5,"6-10",IF(C1>0,"1-5",0)))),$A$1:$B$4,2,0)

Zagnieżdżasz ifs od największej do najmniejszej, aby złapać najmniejszą liczbę testów, a następnie przypisz tekst do vlookup.


0

Jeśli naprawdę musisz to zrobić, dodam kolumnę dla min, na podstawie zakresów, np .:

=IF(SEARCH(" ", A3), LEFT(A3,SEARCH(" ",A3)-1), LEFT(A3,SEARCH("-",A3)-1))

Następnie możesz użyć podglądu opartego na nowej kolumnie minimalnej, ponieważ WYSZUKAJ.PIONOWO domyślnie wyszuka dokładne dopasowanie lub „następną największą wartość, która jest mniejsza niż wartość lookup_value”

Inne odpowiedzi z wieloma zagnieżdżonymi IF () również spełniają twoje kryteria, ale jeśli zadaniem jest naprawdę wymyślić coś takiego, to uczy kilku naprawdę złych pomysłów.

Korzystanie z szeregu zagnieżdżonych instrukcji IF (), a następnie przekazywanie ich do funkcji WYSZUKAJ.PIONOWO () jest skomplikowane i absurdalne. Zakodowałeś granice w formule, a funkcja WYSZUKAJ.PIONOWO () prawie nic nie dodaje (podstawienie wartości może nastąpić bezpośrednio na poziomie IF ()).

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.