0
0 Produkty w koszyku

No products in the cart.

W tym poście nauczymy się, jak wyciągnąć długość przedmiotu w centymetrach z nazwy produktu w Excelu.

Temat ten omówimy na podstawie przykładowych danych z rys. nr 1.

Rys. nr 1 – przykładowe dane

Jak widać na rysunku powyżej mamy pełne nazwy produktów i wewnątrz nich znajduje się długość poszczególnych przedmiotów (50cm, 35cm itd.), czyli mamy podaną liczbę a za nią oznaczenie cm.

Od Excela 2013 możemy tą informację wyciągnąć za pomocą FlashFill, który działa niejako w tle. Wystarczy, że w pierwszym wierszu napiszemy 50, a w drugim 35. To już powinno wystarczyć, żeby wybrać polecenie Wypełnianie błyskawiczne z karty Dane (rys. nr 2). Ewentualnie możemy skorzystać ze skrótu klawiszowego Ctrl+E.

Rys. nr 2 – polecenie Wypełnianie błyskawiczne

Excel wyciągnie odpowiednie informacje i wypełni pozostałe wiersze, co widać na rys. nr 3.

Rys. nr 3 – działanie Wypełniania błyskawicznego

Jeśli nie masz jeszcze Excela 2013 z opcją FlashFill, to mamy dla Ciebie inne rozwiązanie. Trzeba użyć formuły. Skorzystamy tutaj z tego, że nasza długość ma maksymalnie 3 cyfry, ponieważ w takiej sytuacji łatwo jest wyciągnąć takie informacje. Możemy też zauważyć, że dane które chcemy wyciągnąć poprzedza spacja lub znak -. Pierwszym krokiem będzie odnalezienie tekstu "cm". Użyjemy do tego funkcji SZUKAJ.TEKST, która nie rozróżnia wielkości liter. Pierwszym argumentem funkcji jest szukany_tekst, czyli cm w podwójnych cudzysłowach. Drugi argument funkcji to obejmujący_tekst, czyli tekst, w którym chcemy znaleźć nasze znaki (A2). Zapis formuły powinien wyglądać następująco:

=SZUKAJ.TEKST("cm";A2)

Powyższą formułę zatwierdzamy i kopiujemy w dół. Otrzymamy dane przedstawione na rys. nr 4.

Rys. nr 4 – wyniki funkcji SZUKAJ.TEKST

Otrzymaliśmy liczby, czyli pierwszą pozycję szukanego przez nas tekstu "cm" w całym ciągu znaków. My jednak nie chcemy wyciągać informacji od tego znaku, a przed tym znakiem. Chcemy się cofnąć i wyciągnąć informacje poprzedzające dwuznak cm. Wystarczy, że od tej pozycji, na której się zaczyna ciąg cm odjąć wartość 3, bo nasza liczna ma maksymalnie 3 znaki. Zapis formuły powinien wyglądać następująco:

=SZUKAJ.TEKST("cm";A2)-3

Otrzymamy nowe pozycje o 3 znaki wcześniej przedstawione na rys. nr 5.

Rys. nr 5 – nowa pozycja o 3 znaki wcześniej

Dopiero od tych zmodyfikowanych pozycji chcemy zacząć wyciągać tekst. Użyjemy do tego funkcji FRAGMENT.TEKSTU. Pierwszym argumentem funkcji jest tekst, czyli tekst z którego chcemy wyg=ciągnąć jakiś fragment (A2). Drugi argument funkcji to liczba_początkowa, czyli pozycja od jakiej chcemy zacząć wyciągać informacje (wynik poprzedniej formuły). Trzeci opcjonalny argument to liczba_znaków, czyli ile znaków chcemy wyciągnąć (3). Zapis formuły powinien wyglądać następująco:

=FRAGMENT.TEKSTU(A2;SZUKAJ.TEKST("cm";A2)-3;3)

Powyższą formułę zatwierdzamy. Otrzymamy wyciągnięte dane dotyczące długości poszczególnych produktów przedstawione na rys. nr 6.

Rys. nr 6 – wyciągnięte dane dotyczące długości produktów

Jak łatwo zauważyć na rysunku powyżej, przez to że wyciągnęliśmy 3 znaki, otrzymaliśmy część danych poprzedzonych minusem lub spacją. Musimy te dodatkowe znaki usunąć. Wystarczy dołożyć jedną funkcję. Zanim jednak to zrobimy, musimy zwrócić uwagę, że nasze dane to według Excela tekst, a nie wartości liczbowe, bo są wyrównane do lewej strony. Wynika to z użycia funkcji FRAGMENT.TEKSTU, która jest funkcją tekstową i zwraca tekst. Musimy użyć tutaj funkcji matematycznej MODUŁ.LICZBY, która konwertuje tekst na liczbę, jak również usuwa znak minus i spację sprzed liczby. Zapis formuły powinien wyglądać następująco:

=MODUŁ.LICZBY(FRAGMENT.TEKSTU(A2;SZUKAJ.TEKST("cm";A2)-3;3))

Po zatwierdzeniu formuły otrzymamy dane przedstawione na rys. nr 7.

Rys. nr 7 – wyciągnięta długość produktów