Jak połączyć kolumny w LibreOffice Calc?

Czasami już po wprowadzeniu danych do arkusza okazuje się, że niektóre informacje niepotrzebnie rozbito na dwie lub więcej kolumn. Gdyby chodziło o komórki, skorzystalibyśmy z funkcji scalania; tutaj jednak nie przyniesie ona oczekiwanych efektów. Artykuł opisuje, w jaki sposób je uzyskać.

Poniżej znajduje się przykładowa baza danych. Dla podstawowych danych osobowych jej twórca przewidział dwie kolumny, chociaż w zupełności wystarczyłaby jedna. Aby ją utworzyć, będę potrzebował kolumny tymczasowej (Imię i nazwisko).

Okno programu Calc pokazujące przykładową bazę danych. W kolumnie A wpisane są imiona, w kolumnie B zaś nazwiska.

Połączenie dwóch komórek sprowadza się do wprowadzenia formuły do komórki C2:

=ZŁĄCZ.TEKSTY(A2;" ";B2)

Wykorzystana funkcja zwraca ciąg znaków, który jest połączeniem ciągów podanych jako argumenty. Ponieważ komórki A2 oraz B2 nie zawierają spacji, muszę ją dodać (jako drugi argument). W przeciwnym wypadku uzyskałbym niezbyt czytelny wynik typu „ImięNazwisko”.

Gdyby niektóre z komórek w złączanych kolumnach zawierały spacje, uzyskane rezultaty byłyby dość niespójne. Można temu zapobiec wykorzystując funkcję USUŃ.ZBĘDNE.ODSTĘPY, która kasuje niedrukowalne znaki z początku oraz z końca ciągu znaków podanego jako argument. Gotowa formuła wygląda następująco:

=ZŁĄCZ.TEKSTY(USUŃ.ZBĘDNE.ODSTĘPY(A2);" ";USUŃ.ZBĘDNE.ODSTĘPY(B2))
Nawiasem mówiąc, zamiast z funkcji ZŁĄCZ.TEKSTY można skorzystać z operatora konkatenacji (&):
=A2 & " " & B2

Oczywiście gotową formułę musimy jeszcze wkleić do pozostałych komórek w kolumnie.

Okno programu Calc. W kolumnie C znajdują się połączone imiona i nazwiska.

Naszym celem jest połączenie dwóch kolumn w jedną; zamiast tego udało nam się z dwóch kolumn zrobić trzy. Naturalnym krokiem wydaje się więc usunięcie dwóch pierwszych, które nie są nam już potrzebne. Jednak jeżeli tak zrobimy, zmieni się również zawartość kolumny tymczasowej.

Dlatego najpierw musimy zaznaczyć całą kolumnę C, skopiować ją (Ctrl + C) i wkleić specjalnie (Ctrl + Shift + V). W nowym oknie odznaczamy Wklej wszystko oraz Formuły. Potwierdzamy chęć zastąpienia obecnej zawartości komórek.

Okno wklejania specjalnego. Wśród opcji w lewym górnym rogu odznaczono opcje Wklej wszystko oraz Formuły.

Po wykonaniu tej operacji upewniamy się jeszcze, czy w komórkach nie znajdują się żadne formuły oraz czy nowe dane są poprawne. Jeżeli tak, usuwamy dwie pierwsze kolumny.

Uzyskany efekt przedstawia grafika poniżej.

Uzyskny efekt — jedna kolumna zawierająca dane, które wcześniej znajdowały się w dwóch kolumnach

Podobał Ci się ten artykuł? Zapisz się na listę subskrybentów i otrzymuj informacje o następnych

Komentarzy: 7

  • r. pisze:

    A przydałaby się taka opcja w menu, żeby nie robić tego na około tylko poprzez wybranie dwóch kolumn danych źródłowych i kolumny docelowej, super byłoby, gdyby była możliwość wyboru kolejności scalanych danych, tzn. która kolumna pierwsza A czy B w zaznaczeniu.

    Ot i pomysł do zgłoszenia.

    • Pomysł do zgłoszenia albo jakiegoś sprytnego rozszerzenia. Póki co jednak musimy robić tak, jak opisano w artykule (albo poświęcać więcej uwagi projektowaniu arkuszy i zapobiegać tego typu sytuacjom).

      • r. pisze:

        Są sytuacje, w których celowo dane zostawia się w osobnych kolumnach, żeby później w zależności od przeznaczenia i wymagać odpowiednio je scalić.

        Prawda? 🙂

        • Jeżeli dane są celowo rozdzielone, to ten artykuł się do nich nie stosuje 😉 .
          Fakt, że pokazany przykład nie jest najszczęśliwszy, bo istnieje mnóstwo powodów, żeby imiona i nazwiska trzymać w osobnych kolumnach. Ale tutaj bardziej chodzi o pokazanie narzędzi, możliwości i funkcji. Kto jak i kiedy je wykorzysta, to już inna sprawa.
          Np. scalanie kolumn jest niezbędnym elementem sortowania kolumny po K-tym polu wartości. Przyjmijmy, że w jednej kolumnie mamy ścieżki dostępu do plików i chcielibyśmy je posortować alfabetycznie po nazwie pliku. W takim wypadku wpierw musimy rozbić naszą kolumnę na dwie, następnie ją posortować i na końcu scalić powstałe kolumny. Nie da się tego zrobić inaczej, przynajmniej nie bez użycia makra.

  • Jakub pisze:

    Bajera!!
    Potrzebowałem do kolumny z nazwami plików dodać link do katalogu w którym się znajdują w internecie.
    Super pomoc
    Taka drobnostka a jak może ucieszyć.
    Pozdrawiam serdecznie i dziękuję Jakub

  • NULL pisze:

    Niestety, funkcja ta nie działa tak jak w MS Office. Mianowicie pomijane są zera np.
    1999|04|05 gdzie | symbolizuje komórki
    złącza teksty do postaci np. 1999-4-5 pomijając zero (bez względu na format komórki)

  • Ewa pisze:

    Czy można połączyć w ten sposób wiele komórek, by nie trzeba było po każdej podanej komórce oznaczać przerwy? Zatem czy da się podać (dłuuugi) ciąg komórek i oznaczyć, jak mają być rozdzielone?

Dodaj komentarz