Jak połączyć dwie formuły w jednej komórce Excel


(4dr14n) #1

Witajcie,
nie wiedziałem gdzie powinienem utworzyć ten temat, także z góry przepraszam jeśli nie tutaj.

Mam dwa pliki excel, w 1 z nich jest więcej pozycji (tu sa tylko numery ID), a w 2 pliku mniej pozycji, lecz oprócz numerów ID w kolumnie A, dodatkowo w kolumnie D jest jakaś wartość. Zadaniem moim było przeniesienie tych wartości do pliku 1. Stworzyłem więc w pliku 1 formułę Wyszukaj.pionowo, której zadaniem jest wpisanie wartości, która znajduje się w pliku 2 przy tym samym numerze ID. Wygląda ona tak:

=WYSZUKAJ.PIONOWO(B2362|[2018.10.02.xlsx]export_rnkbs!$A$240:$D$426|4|0)

Problem w tym, że (tak jak napisałem wcześniej) w pliku nr 1 jest więcej nr ID i niektóre z nich nie występują w pliku nr 2. Tak więc gdy formuła ich nie znalazła w pliku 2, to w pliku 1 pokazała #N/D!

Chciałem więc, żeby zamiast N/D pokazywało cyfrę zero, lub nic nie pokazywało. Znalazłem na stronie supportu MS, że służy do tego funkcja Jeżeli.Błąd:
=JEŻELI.BŁĄD(FORMUŁA();0)
(szczegóły tutaj: Link)

No i tu się zaczynają schody, bo nie wiem jak mam zastosować tę drugą formułę. Przypuszczam, że powinienem ją dopisać do tej pierwszej, ale nie wiem jak to zrobić. Próbowałem różnymi sposobami, ale nic się nie udaje, a Excel wciąż informuje o błędnie zbudowanej formule. Nie wiem np. czy zamiast FORMUŁA() powinienem jeszcze raz przepisać tę pierwszą formułę, albo jak inaczej to zrobić?

Próbowałem tak:
=WYSZUKAJ.PIONOWO(B2362|[2018.10.02.xlsx]export_rnkbs!$A$240:$D$426|4|0)|=JEŻELI.BŁĄD(FORMUŁA();0)

oraz tak:
=WYSZUKAJ.PIONOWO(B2362|[2018.10.02.xlsx]export_rnkbs!$A$240:$D$426|4|0)|=JEŻELI.BŁĄD(FORMUŁA(WYSZUKAJ.PIONOWO(B2362|[2018.10.02.xlsx]export_rnkbs!$A$240:$D$426|4|0));0)

i jeszcze tak:
=WYSZUKAJ.PIONOWO(B2362|[2018.10.02.xlsx]export_rnkbs!$A$240:$D$426|4|0)|JEŻELI.BŁĄD(WYSZUKAJ.PIONOWO(B2362|[2018.10.02.xlsx]export_rnkbs!$A$240:$D$426|4|0);0)

W ogóle to po wyskoczeniu błędy podświetla mi na niebiesko w formule wskazaną komórkę, czyli B2362. Faktycznie wartości tej komórki nie ma w drugim pliku excel, ale właśnie o to mi chodzi, że jeśli excel nie znajdzie wartości komórki w drugim excelu, to żeby w pierwszym pliku wpisał zero, albo nic nie wpisywał, zamiast N/D.

Pomoże kto? :slight_smile:


(TomVoo) #2

A próbowałeś tak?


Problem z wyświetlaniem 'czasu' w komórkach MS Excel
(4dr14n) #3

Łał, zadziałało :smiley: Tylko musiałem zmienić średnik na końcu na znaczek | , bo ja mam excel 2007. Poza tym uzupełniane wartości to czas, więc zamiast zwykłego zera pokazuje mi 00:00:00, co raczej zaciemnia ogólny obraz, więc zamiast zera wpisałem na końcu cudzysłów i ostatecznie formułka wygląda tak:

=JEŻELI.BŁĄD(WYSZUKAJ.PIONOWO(B2363|[2018.10.02.xlsx]export_rnkbs!$A$240:$D$426|4|0)|"")

Jeszcze raz bardzo Ci dziękuję za podpowiedź :wink:


(Pablo_Wawa) #4

To nie “wina” Excela, po prostu w Ustawieniach regionalnych Windowsa masz tak ustawiony separator listy (domyślnie jest średnik “;”, ale to można sobie zmienić - u Ciebie jest pipe “|”):


(4dr14n) #5

A widzisz, to nie wiedziałem o tym. Zawsze oglądam tutoriale z excelem 2016 i tam stosują średnik. Sądziłem, że to wina wersji oprogramowania :wink: