Jak usunąć spacje w Excelu
Czasami przy okazji pracy na wartościach tekstowych w arkuszu kalkulacyjnym, stajemy przed koniecznością usunięcia z nich spacji. Excel oferuje nam kilka sposobów usuwania spacji, zarówno za pomocą istniejących funkcji, jak i funkcjonalności interfejsu. W tym artykule przestawię 2 sposoby.
Jeśli chcesz wykonać opisane tu czynności kroki po kroku, pobierz załącznik klikając w przycisk po prawej stronie. Znajduje się w nim plik .xls z takimi danymi:
W kolumnie A mamy wypisane modele urządzeń RTV (umowne). W kolumnie B chcemy zapisać te same nazwy, ale bez spacji (obecne nazwy zawierają dwie spacje). Jak to zrobić? Poniżej znajdziesz 2 sposoby.
Sposób pierwszy: Usuwanie spacji w excelu funkcją PODSTAW
Dobrym pomysłem na usuwaniem spacji z tekstu w Excelu jest wykorzystanie funkcji PODSTAW. Dzięki tej funkcji wskazujemy, jaki ciąg znaków chcemy zastąpić w tekście wybranym przez nas nowym ciągiem znaków. Klikamy w komórce B2 i wpisujemy w niej funkcję:
Jako pierwszy argument podajemy adres komórki z tekstem, z którego chcemy usunąć spację (A2). Wpisujemy średnik, następnie otwieramy cudzysłów i wpisujemy tekst, który chcemy zmienić – w naszym przypadku jest to po prostu spacja. Następnie zamykamy cudzysłów:
Wpisujemy kolejny średnik, aby przejść do trzeciego argumentu, którym jest nowy tekst, który pojawi się w miejscu spacji. On także powinien być wpisany w cudzysłowie. My nie chcemy mieć żadnego tekstu w miejscu spacji, więc po prostu otwieramy i natychmiast zamykamy cudzysłów:
Dajemy kolejny średnik i wpisujemy ostatni argument funkcji. Jest on nazwany wystąpienie_liczba. Brzmi tajemniczo, ale służy po prostu do tego, aby określić, które z kolei wystąpienie podanego przez nas ciągu znaków w oryginalnym tekście mamy zastąpić. Naszym ciągiem znaków jest spacja, która występuje dwa razy w tekście źródłowym (po „SONY” oraz po „TPC”), dlatego możemy tu określić, czy chcemy pozbyć się pierwszej, drugiej, czy może obu spacji. Jeśli chcemy usunąć wszystkie spacje, nie podajemy w ogole ostatniego parametru funkcji PODSTAW. Czyli wygląda ona tak:
=PODSTAW(A2;” „;””)
A jej wynik przedstawia poniższe zdjęcie:
Jak widzisz w komórce B2 pojawił się ten sam tekst, co w komórce A2, z tym że usunięte zostały z niego wszystkie spacje.
Zobacz też poniżej przypadki, kiedy podamy ostatni argument funkcji PODSTAW w komórkach B3 i B4. Funkcja wtedy ma zapis =PODSTAW(A3;” „;””;1) dla komórki B2 oraz =PODSTAW(A3;” „;””;2) dla komórki B4:
W powyższych przypadkach usunięta została tylko jedna spacja z oryginalnego tekstu, pierwsza w komórca B3, druga w komórce B4.
Sposób drugi: Usuwanie spacji w Excelu funkcją „Znajdź i zamień”
Innym sposobem usuwania spacji z tekstu w Excelu jest skorzystanie z funkcji Znajdź i zamień. W tym przypadku nie musimy stosować formuł, a czynność wykonujemy bezpośrednio na komórkach w których chcemy pozbyć się spacji. Zaznaczmy komórki, z których chcemy usunąć spacje:
Następnie z zakładki Narzędzia Główne na wstążce wybieramy polecenie Znajdź->Zaznacz
…lub wciskamy kombinację klawiszy Control-F. W efekcie powinniśmy uzyskać takie okno dialogowe:
Klikamy na zakładkę Zamień. Następnie w pierwszym polu wpisujemy spację, a drugie pole pozostawiamy puste. Klikamy Zamień wszystko.
Jeśli wszystko wykonaliśmy poprawnie, pojawi się okienko informujące o 8 zmianach. Tyle spacji z naszego tekstu źródłowego zostało zastąpionych niczym, czyli zostało usuniętych.
A tak wygląda końcowy efekt:
To są dwa moje sposoby. Znacie ciekawsze, szybsze, nietuzinkowe? Czekam na Wasze pomysły jak usunąć spacje w Excelu, piszcie w komentarzach.
Jest funkcja usuń.zbędne.odstępy (ang.TRIM), ale w moim przypadku żaden sposób nie zadziałał – a potrzebowałem usunąć spacje w liczbach z pliku csv.
Rafał, udało Ci się w końcu usunąć spacje jakimś sposobem? Daj znać. Jeśli nie, spróbuj użyć proponowanej przeze mnie w tym artykule funkcji PODSTAW, ale zamiast podawać zwykłą spację dla argumentu stary_tekst (czyli ” „) podaj spację niełamiącą – reprezentowaną przez kod CHAR(160).
Czyli byłoby PODSTAW(A2,char(160),””).
Być może w danych w pliku csv zaimportowały Ci się własnie takie spacje (w htmlu znane jako '$nbsp’).
Faktycznie, podstawienie symbolu ASCII 160 na spację rozwiązało problem. Dzięki za sugestię.
Importuję dane w formacie .xls w postaci 24 261,09 PLN. Między liczbą a PLN z pewnością znajduje się „zwykła” spacja, natomiast „spacji” między 4 a 2 nie mogę usunąć żadnymi tu opisanymi przykładami. Nie działa ” ” ani char(160) ani $nbsp. czy istnieją jeszcze jakieś inne „spacje? ??
Innym rozwiązaniem mogłaby być zmiana ustawień regionalnych przedstawiania liczb w panelu sterowania na czas importu danych na bez spacji. https://uploads.disquscdn.com/images/a94c1c50c712e2b301fae4155c175cadc5196cccfcdecb7c4b0611a94af8a2fc.jpg https://uploads.disquscdn.com/images/0f35d354983140c02679c5bfb1170cfebf9970bfebc21762f96f771e1a1d84de.jpg
Najlepiej skopiować tekst do Worda i tam zastosować procedurę usunięcia spacji za pomocą znajdowanie i zamienianie. Następnie przekopiować tekst do Exela.