Zapisz się na newsletter i odbierz DARMOWY EBOOK: 10 najprzydatniejszych porad excelowych

niedziela, 16 marca 2014

Sortowanie tekstu tak jak liczb

Ten post odpowiada na pytanie zadane przez KRISSP, które brzmi tak:

W jaki sposób zrobić sortowanie numerów w zapisie 1/1/2014, 1/2/2014...2/1/2014, 2/2/2014....150/1/2014 itd. Problem w tym, że sortowanie odbywa się alfabetycznie dla cyfr, czyli pokazuje mi wszystkie zapisy od cyfry 1 i wszystkie zapisy z cyfrą 1-czyli 1, 10,11,1....100.101,120, potem wszystkie zawierające cyfrę 2 itd. Więc np. 2/1/2014 wyrzuca mi gdzieś daleko, a powinien zaraz na początku. Chciałbym sortowanie od 1 do końca, ale wg ich kolejności.

Czyli mamy następujące teksty: 1/1/2014, 1/2/2014, 11/1/2014, 11/2/2014, 150/1/2014, 2/1/2014, 2/2/2014, 20/1/2014, 21/1/2014 (obrazek poniżej)

Sortowanie tekstu jak liczb - formatka

a chcemy, by były sortowane według liczby przed pierwszym ukośnikiem, czyli tak: 1/1/2014, 1/2/2014, 2/1/2014, 2/2/2014, 11/1/2014, 11/2/2014, 20/1/2014, 21/1/2014, 150/1/2014.

Dodatkowo, pokażę w jaki sposób posortować te teksty również po drugiej liczbie (między ukośnikami): 1/1/2014, 2/1/2014, 11/1/2014, 20/1/2014, 21/1/2014, 150/1/2014, 1/2/2014, 2/2/2014, 11/2/2014

Aby wykonać to zadanie, proponuję stworzyć dwie kolumny pomocnicze: rob1 i rob2. W jednej z nich umieszczę liczbę przed pierwszym ukośnikiem, w drugiej - liczbę między ukośnikami. Następnie posortuję po nich wszystkie dane.

W tym celu należy:

1. W komórce B2 wpisać następującą formułę:
 =LEWY(A2;SZUKAJ.TEKST("/";A2)-1)*1 
i skopiować ją do pozostałych komórek.

2. W komórce C2 wpisać następującą formułę:
=FRAGMENT.TEKSTU(A2;SZUKAJ.TEKST("/";A2)+1;SZUKAJ.TEKST("/";A2;SZUKAJ.TEKST("/";A2)+1)-1-SZUKAJ.TEKST("/";A2))*1
i skopiować ją do pozostałych komórek.


Oto rezultat:
Sortowanie tekstu jak liczb - wynik formuł

Teraz wystarczy już tylko posortować dane. Jeśli korzystasz z okna sortowania w Dane/Sortuj, wybierz następujące kryteria sortowania:

Sortowanie tekstu jak liczb - okno sortowania

Szybciej można to zrobić następująco:
1. Ustaw się w dowolnej komórce kolumny rob1 i posortuj dane rosnąco za pomocą przycisku sortowania:
2. Zrób to samo po ustawieniu się w dowolnej komórce kolumny rob2.

A oto efekt końcowy:
Sortowanie tekstu jak liczb - wynik

Gotowe!


Related Posts Plugin for WordPress, Blogger...

Brak komentarzy:

Prześlij komentarz