Automatyczny podział wiersza Shift+Enter [SOLVED]

Użytkowanie arkusza kalkulacyjnego
xanat
Posty: 2
Rejestracja: pn mar 25, 2024 9:21 am

Automatyczny podział wiersza Shift+Enter [SOLVED]

Post autor: xanat »

Mam dane w kilku kolumnach i potrzebuje złączyć każdy wiersz (składający się np. z 3 komórek) do jednej komórki, a następnie dane, które były w osobnych komórkach przed złączeniem oddzielić podziałem wiersza. Przykład jak to wygląda:

wiersz 1: "komórka 1a" "komórka 1b" "komórka 1c"
wiersz 2: "komórka 2a" "komórka 2b" "komórka 2c"

a chce uzyskać
wiersz 1: "tekst z komórka 1a"
"tekst z komórka 1b"
"tekst z komórka 1c"
wiersz 2: "tekst z komórka 2a"
"tekst z komórka 2b"
"tekst z komórka 2c"

Próbowałem następujących operacji:
- funkcja złącz tekst oddzielając poszczególne łączone komórki średnikiem, następnie chciałem przy użyciu funkcji znajdź i zmień zmienić średnik na wyrażenie regularne "\n", lecz to nie działa (wstawia po prostu treść \n w miejsce średnika (miałem zaznaczone "wyrażenia regularne"
- funkcja złącz tekst oddzielając poszczególne komórki od razu przy łączeniu wyrażeniem regularnym "\n", lecz tutaj również przy łączeniu nie robiło podziału wiersza tylko wstawiało treść \n pomiędzy łączonymi komórkami (w opcjach miałem zaznaczone "włącz wyrażenia regularne w formułach"

Jest jakieś sposób, że wykonać taką operację?
Ostatnio zmieniony pn mar 25, 2024 8:17 pm przez xanat, łącznie zmieniany 1 raz.
Libreoffice 7.6.5.2 na Windows 11
Jan_J
Posty: 4576
Rejestracja: pt maja 22, 2009 1:20 pm
Lokalizacja: Wrocław

Re: Automatyczny podział wiersza Shift+Enter

Post autor: Jan_J »

Może pomóc:
* viewtopic.php?t=4650 (w skrócie: użyć numeru UNICODE znaku i funkcji CHAR). Symbol końca wiersza ma w Unikodzie numer 10 (stwierdzenie to warte jest uściślenia, ale może przy innej okazji).

* w projektach użytkowników na naszym forum była zgłoszona funkcja łącząca teksty przy użyciu separatora. Taka operacja często nosi nazwę JOIN. Jeśli znajdę, podeślę link (ale szukam i nie widzę...).

* w LibreOffice Calc istnieje funkcja TEXTJOIN(separator; znacznik pomijania pustych komórek; wartości)
np. przy
A1: aaa
B1: bbb
C1: ccc
=TEXTJOIN(CHAR(10); 0; A1; B1; C1)
da tekst
"aaa
bbb
ccc"
Dokumentacja podręczna mówi ponadto, że ciąg wartości można opisać jako zakres:
=TEXTJOIN(CHAR(10); 0; A1:C1)
libre_calc_textjoin.png
libre_calc_textjoin.png (54.17 KiB) Przejrzano 812 razy
JJ
LO (24.2|7.6) ∙ Python (3.12|3.11|3.10) ∙ Unicode 15 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
Awatar użytkownika
Jermor
Posty: 2351
Rejestracja: sob paź 12, 2013 11:09 am
Kontakt:

Re: Automatyczny podział wiersza Shift+Enter

Post autor: Jermor »

Tak jak napisał @Jan_J. W libreOffice Calc zastosuj funkcję:

Kod: Zaznacz cały

=POŁĄCZ.TEKSTY(ZNAK(10);1;A1:C1)
Drugi argument (1) oznacza, że komórki puste w tym zakresie (A1:C1) mają zostać pominięte.
AOO 4.1.15, LO 24.8.2 (x64) na Windows 10 64bit
Ważne!
Jeśli twój problem został rozwiązany, wróć do swojego pierwszego postu, przejdź do edycji i dopisz [SOLVED] w temacie.
Inni, którzy mają podobny problem, będą wiedzieli, że istnieje jego rozwiązanie.
xanat
Posty: 2
Rejestracja: pn mar 25, 2024 9:21 am

Re: Automatyczny podział wiersza Shift+Enter

Post autor: xanat »

Działa, dzięki za pomoc
Libreoffice 7.6.5.2 na Windows 11
ODPOWIEDZ