Strony

  • Strona główna
  • Kurs Excel
  • Kurs VBA
  • Moje narzędzia
  • Ciekawe Strony

9 Wyszukaj.pionowo - błąd #N/D

Witam,
W poprzednich postach opisałem jak wyszukiwać dane w tabelach za pomocą wyszukaj.pionowo. Jeżeli nie zapoznałeś się z tymi wpisami, zacznij proszę od nich, zanim przejdziesz do poniższego tekstu.
Dzisiaj przedstawię sytuację, w której funkcja wyszukaj.pionowo nie znajduje wyszukiwanych danych i zwraca błąd braku danych, wyświetlany jako #N/D.



Błąd #N/D

 W poprzednich przykładach wszystko szło gładko, wszystkie poszukiwane dane znajdowały się w przeszukiwanej tabeli i funkcja zwracała nam odpowiednie dane. W przykładowym pliku, który jest modyfikacją pierwszego przykładu, widzimy sprzedaż zabawek w pewnym sklepie na zakładce sprzedaż. Na zakładce towary znajdują się ich ceny. Kolejny raz użyjmy funkcji wyszukaj.pionowo, aby znaleźć ceny do towarów i podsumować sprzedaż. W komórce D2 wpisuję poniższą formułę i przeciągam ją do komórki D2.

=WYSZUKAJ.PIONOWO(B2;towary!A:B;2;0)


  Jeżeli masz wątpliwości, jak powstałą powyższa formuła, wróć proszę do poprzedniego wpisu. Funkcja zwróciła ceny dla wszystkich produktów oprócz towaru lalka. Szybki rzut okiem na zakładkę towary pozwala stwierdzić że tego produktu tam po prostu nie ma. Funkcja wyszukaj.pionowo zwraca więc błąd braku danych, ponieważ nie znalazło danych dla lalka.


Przykład błędy braku danych

  Dodatkowy problem jest widoczny w podsumowaniach. Funkcje sumujące nie mogą do siebie dodać odnalezionych danych do kodów błędów, więc po prostu powtarzają znaleziony błąd.



Usuwanie błędu #N/D

Metody radzenia sobie z tym błędem są dwie, poprzez uzupełnienie przeszukiwanych danych lub zastąpienie komunikatu o błędzie inną informacją.

Dodajmy więc do zakładki towary dodatkową linię, jak na poniższej ilustracji. Funkcja wyszukaj pionowo znajduje teraz dane dla lalka i zwraca odpowiednią wartość.


Lista cen, uzupełniona o brakujący towar

Inną metodą jest użycie funkcji JEŻELI.BŁĄD, która wygląda następująco:

=JEŻELI.BŁĄD(funkcja, która może zwrócić błąd; wartość, która ma być zwrócona zamiast kodu błędu)

Ostatecznie cała nasza formuła będzie wyglądać następująco dla komórki D2:

=JEŻELI.BŁĄD(WYSZUKAJ.PIONOWO(B2;towary!A:B;2;0);0)

Funkcja JEŻELI.BŁĄD zwróci wartość funckcji wyszukaj.pionowo za każdym razem, kiedy będzie ona prawidłowa, lub zastąpi ją zerem, kiedy wystąpi błąd.

Oczywiście zamiast zera w powyższej funkcji możemy zwrócić dowolną inną wartość liczbową lub tekst, co ma większy sens w tym przypadku.

=JEŻELI.BŁĄD(WYSZUKAJ.PIONOWO(B2;towary!A:B;2;0);"Brak ceny dla towaru")


W kolejnym wpisie na blogu przedstawię częstą sytuację, w której porównywane dane wyglądają identycznie, jednak funkcja wyszukaj.pionowo uporczywie zwraca błąd #N/D.