Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Excel - Wyszukiwanie "duplikatów"

Verlar 12 Gru 2014 09:17 1332 15
  • #1 12 Gru 2014 09:17
    Verlar
    Poziom 6  

    Witajcie,
    mam do sprawdzenia bazę producentów z niecałym milionem pozycji i myślę jak sobie z tym poradzić nie marnując czasu. Jest lista producentów i problem polega mniej więcej tak:

    Mleczarnia Nowak
    Nowak
    Kazik
    Kowalski
    Piekarnia Kowalski

    Na tym przykładzie chciałbym, aby zaznaczyło mi w kolumnie obok, że występuję też inna pozycja zawierająca np Nowak, Kowalski czy piekarnia, mleczarnia.
    Jeśli np jest producent "Unitop" i "Unitop-Optima" lub "Unitop Optima" to żeby w kolumnie obok była notka np duplikat, a ja potem poprzez wyfiltrowanie sobie to uporządkuję.
    Byłbym bardzo wdzięczny za pomoc.

    0 15
  • #2 12 Gru 2014 10:41
    laqula
    Poziom 12  

    Prosto się raczej nie da.
    Trzeba z każdej linijki pozamieniać potencjalne separatory na spacje, rozbić to na poszczególne słowa a potem wyszukać wszystkie pozostałe linijki które zawierają którekolwiek ze słów.

    Prosto można zrobić wyszukiwanie przy kolumnie Nowak innych kolumn które zawierają Nowak. Z "Unitop-Optima" i "Unitop Optima" już tak łatwo nie pójdzie.

    0
  • #3 12 Gru 2014 10:53
    Verlar
    Poziom 6  

    A nie zna nikt może jakiegoś programu, lub np czy w Accesie się by tego nie dało "przeanalizować"? Chodzi o to, aby analizował każdą komórke z każdą w poszukiwaniu podobieństw.

    0
  • #4 12 Gru 2014 11:26
    laqula
    Poziom 12  

    Gotowca nie znam, ale oczywiście dane można zaimportować do jakiejś bazy danych i napisać kawałek procedury która to zrobi. Można też w excelu napisać makro (raczej funkcję). Lub po prostu zrobić prostą aplikację w dowolnym środowisku.

    0
  • #5 12 Gru 2014 11:30
    Verlar
    Poziom 6  

    laqula napisał:
    Gotowca nie znam, ale oczywiście dane można zaimportować do jakiejś bazy danych i napisać kawałek procedury która to zrobi. Można też w excelu napisać makro (raczej funkcję). Lub po prostu zrobić prostą aplikację w dowolnym środowisku.


    Laqula bez obrazy, wiem, że wszystko można, ale ja potrzebuję pomocy "praktycznej" nie teoretycznej :) Można zrobić prostą aplikację, można napisać makro, można, można, ale nie każdy jest programistą :)

    0
  • #7 12 Gru 2014 11:45
    Verlar
    Poziom 6  

    No w końcu konkrety :) Dzięki, sprawdzę i dam znać

    0
  • #8 12 Gru 2014 11:46
    PRL
    Poziom 33  

    Taki sposób poszukiwania chech wspólnych doprowadzi do tego, że będziesz miał bardzo dużo zaznaczonych wierszy, co chyba nie za bardzo pomoże w pracy, a raczej zaszkodzi, bo dla programu 'piekarnia kowalski' i 'piekarnia wisniewski', to będą podobne dane, prawda?

    0
  • #9 12 Gru 2014 12:23
    Verlar
    Poziom 6  

    O cześć PRL :)

    Będą podobne, ale ja już sam będę analizował i sprawdzał te "zaznaczone" duplikatem, lepiej sprawdzić powiedzmy 200 pozycji niż całość :)

    0
  • #10 12 Gru 2014 12:32
    laqula
    Poziom 12  

    Przyszło mi jeszcze do głowy coś takiego. Jeśli ilość słów jest znana (powiedzmy max 10), to:
    - zamienić ręcznie wszystkie separatory na spację (edycja -> zamień),
    - wybrać poszczególne słowa w osobnych kolumnach (kolumna X słowo 1, kolumna Y słowo 2, itd):
    http://www.ozgrid.com/Excel/extract-words.htm
    - potem w kolejnych 100 kolumnach zrobić wyszukaj.pionowo (10 słów szukanych razy 10 słów przeszukiwanych), oczywiście poprzez kopiowanie formuł a nie pisanie każdej
    - w ostatniej kolumnie sprawdzić czy w którejkolwiek ze 100 kolumn coś się pojawiło i oznaczyć jako potencjalny duplikat.

    0
  • #11 12 Gru 2014 12:35
    Verlar
    Poziom 6  

    Słów maksymalnie 3-4 wyjdzie po separacji, to są nazwy, symbole producentów

    0
  • #12 12 Gru 2014 16:28
    PRL
    Poziom 33  

    Zamiast wymyślać kowalskich i wisniewskich może podałbyś te przykłady 3-4 członowe z rzeczywistości?
    Byłoby łatwiej.

    P.S. Problem jest złożony i trzeba w odpowiedni sposób do niego podejść...

    0
  • #13 12 Gru 2014 16:33
    Verlar
    Poziom 6  

    No np. Unitop i Unitop optima jest przykładem :) lub np Sądecki i Sadecki, savona i pollena savona, wszystko w jednej kolumnie po jednym producencie jeden pod drugim.

    0
  • #14 12 Gru 2014 16:37
    PRL
    Poziom 33  

    Takich danych nie podejmuję się przesiewać.:)
    Sądeski, sadecki sudecki optima, opuma swądecki.
    Cieńki lód...

    P.S. Miłej pracy przesiewania.:)

    0
  • #16 12 Gru 2014 21:10
    adamas_nt
    Moderator Programowanie

    Może wrzucić wszystko do tablicy i filtrować w formularzu? Zerknij Link - przykład w załączniku, post #14
    1-sze pole 'Instring', 2-gie 'Left'

    0