Funkcja Wyszukaj
Przykłady opisane w tej lekcji dostępne są w arkuszu Excela:
Funkcja Wyszukaj.xls,
tylko ich samodzielne przerobienie daje gwarancję zapamiętania tej lekcji.
Przykłady dla wszystkich lekcji szkolenia Excel 2003: ExcelSzkolenie.pl
Cwiczenia Excel 2003.zip
Funkcja wyszukaj jest jedną z
najbardziej użytecznych funkcji Excela.
Jej działanie zostanie wytłumaczone
na kilku prostych przykładach, w których będzie niewielka ilość danych, w
rzeczywistości jednak funkcja ta jest najczęściej używana i najbardziej
użyteczna w przypadku pracy z tabelami z ogromną ilością danych.
Przykład 1.
(Arkusz
‘Funkcja Wyszukaj
W poniższym przykładzie mamy 2
tabele z danymi dla 20 produktów, chcielibyśmy wprowadzić ceny z Tabeli 2 do
tabeli 1.
Stajemy w komórce D4 i klikamy
symbol funkcji
W oknie ‘Wyszukaj funcję:’ wpisujemy
tekst ‘wyszukaj’, po czym z poniższego okna ‘Wybierz funcje’ wybieramy
‘WYSZUKAJ.PIONOWO’
Wprowadzamy następujące dane:
·
W
komórkę ‘Szukana_warotść’ wprowadzamy,
po czym będzie wyszukiwanie w tym przykładzie jest nazwa produktu, komórka B4
·
W
komórkę ‘Tabela_tablica’ wprowadzamy
obszar, w którym jest tabela zawierająca dane, które mają być ściągnięte
·
W
komórkę ‘Nr_indeksu_kolumny’ wprowadzamy
numer kolumny, w którym są dane, które mają być ściągnięte
·
W
komórkę ‘Przeszukiwany_zakres’ wprowadzamy
0 dla dokładnego wyszukania, lub 1 dla wyszukania mniej-więcej – nie polecam!
Wprowadzając obszar należy użyć
odwołania bezwzględnego tak, aby przy kopiowaniu funkcji z komórki D4 do
poniższych komórek obszar wyszukiwania nie zmieniał się.
Pierwszą kolumną obszaru, w którym dane
mają być wyszukiwane musi być kolumna zawierająca to, po czym wyszukujemy (w
naszym przykładzie nazwy produktów), jeżeli układ tabeli jest inny należy go
zmienić przed skorzystaniem z funkcji wyszukaj.
Jeżeli występuje najmniejsza różnica
w nazwach produktów np. ktoś dopiszę dodatkową spację, wyszukiwanie nie
powiedzie się.
Podobnie, jeśli wyszukujemy np. po
numerach produktów/klientów i w jednej z tabel numery te są wprowadzone jako
wartości liczbowe a w drugiej jako tekst również wartości nie zostaną
wyszukane. W opisanych powyżej przypadkach należy najpierw ujednolicić nazwy i
ich format w obu tabelach.
Po przeprowadzeniu powyższych
operacji i skopiowaniu funkcji z komórki D4 do poniższych komórek, Tabela 1
powinna wyglądać tak jak na poniższym rysunku.
Ponieważ 2 produktów w ‘Tabeli 2‘
nie znaleziono w miejscach tych został wprowadzony symbol: #N/D!
Symbol ten nie wygląda zbyt dobrze,
aby był niewidoczny należy użyć formatowania warunkowego – lekcja Formatowanie
Warunkowe.
Jeżeli w Tabeli 2 któraś z nazw
produktów występowałaby dwukrotnie wyszukana zostanie tylko wartość dla
pierwszego z wystąpień, Excel nie w żaden sposób nie poinformuje nas, że zaszła
taka sytuacja.
Przykład 2.
(Arkusz
‘Funkcja Wyszukaj
Celem tego przykładu jest utworzenie
jednej formuły, która wyszuka ceny odpowiednio dla stycznia lub lutego.
Pierwszym krokiem będzie upewnienie
się że kolejność produktów w tabelach 2 i 3 jest taka sama. Najprościej jest
zrobić to wprowadzając np. w komórce ‘L4’ formułę: ‘=G4=J4’ i kopiując ją do końca tabeli 3. Jeżeli wynik
dla wszystkich komórek będzie prawda możemy przejść do kolejnego kroku, gdyby
tak nie było należałoby najpierw doprowadzić do takiej samej kolejności w obu
tabelach.
Jeżeli potraktujemy tabele 2 i 3
jako jedną tabelę, cena w styczniu będzie znajdować się 2 kolumnie takiej
tabeli a cena w lutym w 5.
Przed tabelą 1, dopisujemy cyfrę 2
dla wierszy, w których miesiąc to styczeń i cyfrę 5 dla wierszy, w których
miesiąc to luty.
Możemy teraz wprowadzić funkcję wyszukaj
w komórce E4, tak jak to pokazane na poniższym rysunku.
Funkcja będzie pobierać dane z 2
kolumny, jeżeli w kolumnie A jest 2 i z 5 kolumny, jeżeli w kolumnie A jest 5.
Po skopiowaniu formuły do poniższych
komórek wszystkie koszty zostaną wyszukane.
Można ominąć konieczność
wprowadzania oznaczeń w kolumnę A korzystając z nieco bardziej skomplikowanej
funkcji:
=WYSZUKAJ.PIONOWO(B4;G:K;JEŻELI(C4="styczeń";2;5);0)
Przykład 3.
(Arkusz
‘Funkcja Wyszukaj
Ponownie wyszukamy ceny wg 2
kryteriów: nazwy produktu i miesiąca. Ceny znajdują się w 2 tabelach.
Poniższy sposób może wydawać się
skomplikowany ale jest bardziej uniwersalny i może być zastosowany także dla
większej ilości kryteriów.
Ponieważ funkcja wyszukaj nie daje
możliwości wyszukiwania wg wielu kryteriów ani w kilku tabelach na raz,
najpierw będziemy musieli zmienić układ danych w tabelach i połączyć kryteria.
Połączymy tabele 2 i 3 tworząc
tabele 4 i dodając do niej miesiąc, którego dotyczy dana cena, najlepiej, jeśli
układ kolumn będzie taki sam jak w tabeli 1.
Kolejnym krokiem będzie wprowadzenie
w kolumnie H i B funkcji ‘ZŁĄCZ.TEKSTY’, która sumuje kryteria wg., których
chcemy wyszukiwać.
Na poniższym rysunku widać
wprowadzanie tej funkcji do komórki ‘H4’, w tym przypadku funkcja łączy teksty
z komórek ‘I4’ i ‘J4’. Kopiujemy tą funkcję do komórek od H4 do H43 i od B4 do
B29.
Teraz możemy już użyć funkcji
wyszukaj wprowadzając wartości tak jak na poniższym rysunku. Właściwe ceny
zostaną wyszukane.
Na tej samej zasadzie możemy
wyszukiwać dane dla większej ilości kryteriów.
Przykład 4.
(Arkusz ‘Funkcja Wyszukaj
Analogicznie działa funkcja
WYSZUKAJ.POZIOMO z tą tylko różnicą, że zgodnie z nazwą wyszukuje w kolejnych
kolumnach a nie w wierszach, jest użyteczna dla tabel, w których dane
umieszczone są ‘poziomo’.
Przećwiczmy ją na poniższym znanym
już nam przykładzie, do Tabeli 1 należy dodać ceny produktów znajdujące się w
tabeli 2.
Wszystkie argumenty funkcji
WYSZUKAJ.POZIOMO wprowadzamy analogicznie do WYSZUKAJ.PIONOWO, na poniższym
rysunku przedstawiono właściwe argumenty dla tego przykładu.
Po kliknięciu OK kopiujemy funkcję
do pozostałych komórek tabeli. Powinniśmy uzyskać rezultat taki jak
przedstawiony poniżej.
Przykład 5.
Najczęściej występujące problemy
(Arkusz ‘Funkcja Wyszukaj
Dość często zdarza się, że Excel nie
znajduje danych które naszym zdaniem powinny być w tabeli lub też nawet widzimy
że się w niej znajdują.
Wprowadźmy funkcję WYSZUKAJ.PIONOWO
w Arkuszu ‘Funkcja Wyszukaj
Rezultat przedstawiony poniżej z
reguły komentowany jest przez użytkownika następująco ‘Jak to nie ma przecież
widzę że są, co za głupi komputer/Excel.’
(Dane, które teoretycznie powinny
być znalezione, oznaczono zielonym tłem.)
Często dane liczbowe są wprowadzone
w Excelu jako tekst i zmiana formatu komórki z tekstowego na liczbowy nie
załatwia tego problemu.
Zdarza się tak często wtedy gdy dane
do Excela są importowane z innego programu lub ze strony www.
Najszybszą metodą jego rozwiązania
jest wprowadzenie w innej kolumnie formuły w której przemnażamy liczby
wprowadzone jako tekst przez jeden tak jak na poniższym rysunku.
Należy teraz obszar A4:A10 skopiować
i wkleić jako wartości na obszarze B4:B10.
Funkcja WYSZUKAJ.PIONOWO od razu
znalazła odpowiednie dane i zostały one wyświetlone w komórkach F4 i F5.
Wciąż jednak pozostał problem kodów,
które nie są liczbą.
W tym przypadku od razu widać gdzie jest
produkt, którego poszukujemy, ale w nieuproszczonej tabeli zawierającej kilka,
kilkanaście lub kilkadziesiąt tysięcy wierszy należałoby się posłużyć
poleceniem Znajdź aby ustalić w której z komórek kolumny B on się znajduje.
Po znalezieniu odpowiedniego kodu,
dokonujemy szczegółowej inspekcji ciągu znaków i odkrywamy że przed literą F
znajduje się zbędna spacja. Po usunięciu spacji funkcja WYSZUKAJ.PIONOWO,
znajdzie kod bez problemu.
W drugim przypadku spacja znajdowała
się na końcu kodu.
Jeżeli występuje najmniejsza różnica
w nazwach produktów wyszukiwanie nie powiedzie się, powyżej opisałem tylko te
najczęściej spotykane problemy.
Więcej o funkcjach wyszukaj można
przeczytać w lekcjach: ‘Profesjonalne Raporty I’ i ‘Profesjonalne Raporty dla
Zaawansowanych’
Szkolenie Excel 2003 Szkolenie Excel 2007