Skocz do zawartości

Zarchiwizowany

Ten temat jest archiwizowany i nie można dodawać nowych odpowiedzi.

Eban

[OFFICE]Jak dopasować dane z dwóch różnych arkuszy kalkulacyjnych na podstawie wspólnego nr. identyfikacyjnego

Polecane posty

Witam,

natrafiłem w pracy na problem którego nie potrafię rozwiązać. Używam Open Office Calc, ale jeśli ktoś zna rozwiązanie w Microsoft Office to również proszę o pomoc, najwyżej skorzystam z komputera kolegi z pracy lub spróbuję jakoś zastosować instrukcje w Openn Office.

Mamy dwie tabele, obie mają sporo kolumn takich jak cena, dostępność producent itd., ale pozwolę sobie ograniczyć ich ilość na potrzeby przykładu.

Pierwsza z nich zawiera dane produktu w postaci numeru identyfikacyjnego (ID) i nazwy produktu. Na przykład:

ID / Nazwa

123/Produkt 1

234/Produkt 2

345/Produkt 3

Druga tabela zawiera ID produktu i jego cenę, ale część produktów w nim występująca nie znajduje się w pierwszej tabeli, a część występujących w pierwszej nie występuje w drugiej. Przykładowy wygląda tabeli 2 (dla lepszego obrazu dodam w nawiasach nazwę):

ID/ Cena

123/ 2zł (Produkt 1)

345/ 5zł (Produkt 3)

456/ 10zł (Produkt 4)

Co chcę osiągnąć:

Potrzebuję połączyć obie tabele w jedną w następującej formie.

ID/Nazwa/Cena

Efekt końcowy powinien więc wyglądać mniej więcej tak:

ID/Nazwa/Cena

123/Produkt 1/ 2 zł

234/Produkt 2/ -----

345/Produkt 3/ 5 zł

456/------------/ 10 zł

Bardzo przyspieszyłoby mi to robotę, którą muszę wykonywać ręcznie, więc proszę o pomoc.

Z góry dziękuję.

Link do komentarza
Udostępnij na innych stronach

Nie mam open office'a, ale w Excelu 2010 jest funkcja "wyszukaj.pionowo", która zrobi prawie to, co chcesz.

Składnia wygląda tak:

=wyszukaj.pionowo(szukana_wartość;tabela;numer_kolumny;FAŁSZ)

"numer_kolumny" wskazuje, z której kolumny ma być zwracana wartość funkcji. "FAŁSZ" powoduje, że wyszukiwana jest dokładna wartość, a nie najbliższa. Przeszukiwana jest pierwsza kolumna z tabeli.

Rozwiązanie nie jest najzgrabniejsze, bo w przypadku, gdy funkcja nie znajdzie szukanej wartości zwraca #N/D!, dlatego lepiej opakować to w kolejną funkcję:

=JEŻELI.BŁĄD(WYSZUKAJ.PIONOWO(szukana_wartość;tabela;numer_kolumny;FAŁSZ);"---")

Przykład: =JEŻELI.BŁĄD(WYSZUKAJ.PIONOWO(C3;H:I;2;FAŁSZ);"---")

,gdzie:

C3 - komórka zawierająca ID produktu

H:I - tabela, w której pierwsza kolumna to ID, a druga cena

2 - kolumna z cenami

EDIT:

Znalazłem rozwiązanie dla całego problemu - odpowiednie formuły dla pierwszego wiersza na screenie:

post-652671-0-71181900-1392766458_thumb.

Kolumna "ID" zawiera wszystkie liczby od 1 do maksymalnego indeksu przedmiotu.

Kolumna "kontrola" sprawdza, czy dla danego ID nie ma danych - potem przy pomocy filtrowania można ukryć zbędne wiersze.

Link do komentarza
Udostępnij na innych stronach



  • Kto przegląda   0 użytkowników

    • Brak zalogowanych użytkowników przeglądających tę stronę.
×
×
  • Utwórz nowe...