fbpx

Sortowanie tekstu tak jak liczb

16.03.2014 | Daty i czas, ECP1, Operacje na tekście

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!

Powiązane produkty:

  • WEBINAR: Konwersja tekstu na liczbę odpowiadający na pytanie dlaczego w ogóle Excel czasem traktuje liczby/ daty jako tekst oraz prezentujący szereg metod na radzenie sobie z takimi sytuacjami. Dodatkowo pokazana jest też metoda na sytuację odwrotną: gdy chcemy z liczby stworzyć tekst.

Jeżeli chcesz lepiej poznać Excela na poziomie podstawowym zapisz się na listę zainteresowanych kursem Excel w codziennej pracy cz. 1! Podczas oczekiwania na kurs będę Ci wysyłała informacje, ciekawostki i excelowe triki. Bezpłatnie! 

Pomogłam Ci? Postaw mi wirtualną kawę! →

Przeczytaj podobne wpisy

Kategorie

0 komentarzy

Wyślij komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *