[Solved] funkcja złącz.teksty i liczby jako tekst

Użytkowanie arkusza kalkulacyjnego
kosmal
Posty: 52
Rejestracja: pt sie 28, 2009 9:27 am

[Solved] funkcja złącz.teksty i liczby jako tekst

Post autor: kosmal »

W komórce tekstowej arkusza mam wpisane 8/20 (albo format wszystkie i '8/20). W innym pliku wykorzystuję ten wpis w funkcji złącz.teksty i tam jako wynik zamiast 8/20 wyświetla się 44044. Jeżeli wezmę to w cudzysłów jest w porządku, jednak ma być 8/20 bez żadnych dodatkowych znaków. Np. 6/15 to 42156. Gubi go ta cyfra na początku przy linkowaniu danych. Czy to bug, czy też jest jakaś szansa aby to właściwie wyświetlić?
Pozdrawiam
Andrzej
Ostatnio zmieniony pt lis 30, 2012 11:11 am przez kosmal, łącznie zmieniany 1 raz.
LibreOffice 6.3.1.2 Debian buster, Windows 10
Minio
Posty: 323
Rejestracja: śr sie 01, 2012 1:48 am
Lokalizacja: (Poznań|Dziwnów), Polska

Re: funkcja złącz.teksty i liczby jako tekst

Post autor: Minio »

Nie mogłem odtworzyć Twojego błędu na 3.5.6 oraz 3.6.4-rc1 (ale tutaj przynajmniej wiem dlaczego).
Jeżeli nie możesz zaktualizować pakietu, spróbuj funkcji T lub TEKST.
Mój blog o używaniu LibreOffice
LibreOffice 4.2.6, Debian testing amd64
Jan_J
Posty: 4579
Rejestracja: pt maja 22, 2009 1:20 pm
Lokalizacja: Wrocław

Re: funkcja złącz.teksty i liczby jako tekst

Post autor: Jan_J »

Ogólnie rzecz biorąc, narzekanie jest rzeczą łatwą...
W tym przypadku powodem do narzekań jest brak spójnej koncepcji typu danych. Czy coś jest tekstem, liczbą, czy datą, decyduje format (jawnie zadana właściwość komórki) oraz heurystyka rozpoznawania treści. Jakiego typu będzie wartość pobrana z komórki, i czy typ ten będzie taki sam przy różnych sposobach wykorzystania tej wartości -- to sprawa jeszcze bardziej złożona.

Typy danych to jedna z podstawowych koncepcji algorytmiki. Jednak w praktyce użytkownik-niespecjalista woli, kiedy komputer zachowuje się “normalnie” -- tj. zgodnie z potocznym oczekiwaniem w danej sytuacji. I tak np. w pewnym wiodącym na rynku arkuszu kalkulacyjnym wpisanie do komórki ciągu cyfr jako tekstu nie wyklucza użycia zawartości tej komórki w dodawaniu czy mnożeniu. W pewnej chwili w początku XXI wieku, chcąc owego potentata doścignąć, także OpenOffice zarzucił rygorystyczne traktowanie tekstów.

Szczerze? -- ten brak konsekwencji najbardziej mnie drażni w arkuszach kalkulacyjnych. No ale jest to koszt popularności; nie wiem czy nieunikniony.

Jednak Twojego problemu odtworzyć nie zdołałem (LO 3.5 na SUSE oraz OOo 3.3 -- bo takie w tym momencie miałem pod ręką). Wartość 8/20 jest domyślnie rozpoznawana jako data (czyli liczba odpowiednio sformatowana). Nb. Twoje 42156 to wartość reprezentująca datę 6/15, czyli 1 czerwca 2015 r. Ale wymuszając typ tekstowy apostrofem ' albo formatem komórki nie dostałem liczbowej interpretacji jej zawartości w wyniku przetworzenia funkcją Złącz.teksty(). Co nie znaczy, by w innych wersjach, a nawet w innych sytuacjach, było to niemożliwe.

Za to Złącz.teksty() pobierająca wartość z komórki typu date rzeczywiście rozumie ją jako liczbę... Sprawdź lepiej typy swoich danych.
JJ
LO (24.2|7.6) ∙ Python (3.12|3.11|3.10) ∙ Unicode 15 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
kosmal
Posty: 52
Rejestracja: pt sie 28, 2009 9:27 am

Re: funkcja złącz.teksty i liczby jako tekst

Post autor: kosmal »

Jan_J pisze:Ogólnie rzecz biorąc, narzekanie jest rzeczą łatwą...
W tym przypadku powodem do narzekań jest brak spójnej koncepcji typu danych. Czy coś jest tekstem, liczbą, czy datą, decyduje format (jawnie zadana właściwość komórki) oraz heurystyka rozpoznawania treści. Jakiego typu będzie wartość pobrana z komórki, i czy typ ten będzie taki sam przy różnych sposobach wykorzystania tej wartości -- to sprawa jeszcze bardziej złożona.
Jednak Twojego problemu odtworzyć nie zdołałem (LO 3.5 na SUSE oraz OOo 3.3 -- bo takie w tym momencie miałem pod ręką). Wartość 8/20 jest domyślnie rozpoznawana jako data (czyli liczba odpowiednio sformatowana). Nb. Twoje 42156 to wartość reprezentująca datę 6/15, czyli 1 czerwca 2015 r. Ale wymuszając typ tekstowy apostrofem ' albo formatem komórki nie dostałem liczbowej interpretacji jej zawartości w wyniku przetworzenia funkcją Złącz.teksty(). Co nie znaczy, by w innych wersjach, a nawet w innych sytuacjach, było to niemożliwe.

Za to Złącz.teksty() pobierająca wartość z komórki typu date rzeczywiście rozumie ją jako liczbę... Sprawdź lepiej typy swoich danych.
Czy przez typ danych rozumiesz to co napisałem czyli ' albo jawnie zadeklarowany format komórki? Czy może typ danych pobieranych przez funkcję złącz teksty jest zaszyty gdzieś indziej? Mój LO to 3.5.7.2, w Debianie mam też 3.5 ale teraz nie wiem, który dokłądnie oba zachowują się jednakowo. Spróbuję zrobić upgrade.
LibreOffice 6.3.1.2 Debian buster, Windows 10
kosmal
Posty: 52
Rejestracja: pt sie 28, 2009 9:27 am

Re: funkcja złącz.teksty i liczby jako tekst

Post autor: kosmal »

Wersja LO 3.6.3 działa prawidłowo.
Dziękuję
LibreOffice 6.3.1.2 Debian buster, Windows 10
ODPOWIEDZ