Elektroda.pl
Elektroda.pl
X
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

excel - porównanie dwóch kolumn

LichKing 22 Jan 2013 19:49 6183 12
  • #1
    LichKing
    Level 9  
    Witam
    Mam problem dotyczący porównania dwóch kolumn ze wskazaniem różnic w trzeciej kolumnie, np. jeżeli artykuł występuje w pierwszej kolumnie w ilości 3 , w drugiej ilości np. 1 to w kolumnie trzeciej wyświetla nam się artykuł i ilość różnicy.
    W momencie kiedy produkt występuje w tej samej ilości w obu kolumnach to nie wyświetla się on w trzeciej przykład na zdj. poniżej.

    excel - porównanie dwóch kolumn
  • #2
    bobo
    Level 29  
    Jak widać na obrazku, kolega juz rozwiązał problem, więc o co chodzi?
    Pozdrówka
  • #3
    LichKing
    Level 9  
    To jest przykład wizualny , nie funkcjonalny. Potrzebuję pomocy w budowie funkcji, która będzie to obliczała dla dużej ilości wierszy.
  • #4
    nunak
    Level 14  
    Czy w opisywanym przez ciebie problemie istnieje możliwość dodania kolumn pomocniczych? bo jeżeli tak to dodanie kolumn z funkcją licz.jeżeli załatwia po części sprawę ( najprostsze rozwiązanie ale i najbardziej rozbudowane)
  • #5
    LichKing
    Level 9  
    Nunak jak najbardziej. Najważniejsze jest żeby funkcja prawidłowo obliczała różnice między tymi kolumnami.
  • #7
    LichKing
    Level 9  
    Próbowałem już na zasadzie tego przykładu, ale tutaj jest występuje lub nie, a w moim przypadku jeżeli występuje to w jakich ilościach. Przeszukałem już forum i nie znalazłem żadnej podpowiedzi.
  • #8
    nunak
    Level 14  
    Odnośnie ilości to problemu nie ma -> ja się zaplątałem z wyszukaniem z listy *w Twoim przypadku kolumny C. Kolumna D nie stanowi problemu -> a jak pozbyć się duplikatów bez pomocy filtrów to muszę na spokojnie przeanalizować, ewentualnie makro jak oczywiście wchodzi w rachubę.
  • #9
    LichKing
    Level 9  
    Brak ograniczeń jeśli chodzi o makro :)
  • #10
    nunak
    Level 14  
    Odnośnie makra jutro sobie przysiądę i napiszę.
    Odnośnie wyliczenia kolumny D to funkcja LICZ.JEŻELI($A$1:$A$12;C2)-LICZ.JEŻELI($B$1:$B$12;C2) da Ci wymagane wartości. *potraktować można jako pomocniczą kolumnę pomocniczą lub dodać funkcję sprawdzającą jeżeli *oczywiście interesują nas wartości różne od 0
  • #11
    marek003
    Level 40  
    Jeżeli autor dopuszcza pomocnicze kolumny to nie widzę problemu.

    Poniżej przykład.
    Przy czym nie ma tu opcji sprawdzania drugiej kolumny.
    Czyli jeżeli w pierwszej kolumnie pojawi się przykładowo "Herbata" będzie to jak najbardziej sprawdzane. Jeżeli natomiast w drugiej kolumnie będzie "Herbata" a nie będzie jej w pierwszej zostanie to zignorowane jako coś czego nie trzeba sprawdzać.
    Czy tak ma być czy trzeba zrobić kolejne kolumny pomocy by i to wyeliminować?

    Makrem można "wszystko", ale to niszczy inwencję twórczą.
    Wg mnie w zadaniach z excelem celem jest to by bez makra i przy minimalnej ilości kolumn/wierszy/komórek pomocniczych osągnąć cel. Aczkolwiek wiem też że czasami bez makra nie da się zrealizować zadania.
  • #12
    nunak
    Level 14  
    Zgodzę się z tym, że inwencja twórcza jest fajna -> zwłaszcza ciąg zagnieżdzanie się funkcji.
    W fajny sposób przechwyciłeś listę -> nawet by mi to do głowy nie przyszło.
  • #13
    Maciej Gonet
    VBA, Excel specialist
    Rozwiązanie Pana marka003 jest ciekawe, ale dość zagmatwane.
    Problem można rozwiązać dużo prościej, ale nie przez funkcje tylko przez operację konsolidacji. Wadą takiego rozwiązania jest konieczność powtórzenia operacji po każdej zmianie danych.
    Moja propozycja jest następująca: za pierwszą kolumną z danymi dodajemy kolumnę złożoną z samych jedynek, za drugą kolumną również dodajemy kolumnę z minus jedynek. Umieszczamy kursor w miejscu, gdzie ma być wynik. Z menu Dane wybieramy Konsoliduj (dotyczy wersji 2003). W okienku dialogowym wybieramy Funkcja: Suma, w polu Odwołanie wprowadzamy adres pierwszej kolumny wraz z dodanymi jedynkami (można zaznaczyć myszką) i klikamy Dodaj, potem tak samo wprowadzamy drugi zakres z (-1)-kami, wreszcie w polu Użyj etykiet w zaznaczamy Lewa kolumna i klikamy OK.
    I to wszystko. W wyniku dostajemy podsumowanie: w lewej kolumnie wszystkie znalezione nazwy i obok wartości: dodatnie oznaczają, że wpisów w lewej kolumnie było więcej, zera - że było ich tyle samo, wartości ujemne, że w drugiej kolumnie pojawiło się coś, czego nie było w pierwszej, może to być np. sygnał, że jakaś nazwa została błędnie wpisana. Cała procedura jest dość prosta. Wyniki można potem posortować jak wygodniej, można wiersze z wartościami zerowymi ukryć np. za pomocą filtra.