Dziwna konwersja str -> data

Użytkowanie arkusza kalkulacyjnego
Pawouek
Posty: 2
Rejestracja: wt mar 09, 2010 10:11 am

Dziwna konwersja str -> data

Post autor: Pawouek »

Jest sobie jakaś funkcja autokorekty(?), która uniemożliwia mi normalną pracę.
Wpisując w komórkę ciąg znaków CZ1, CZ2 itd zawsze zamienia to na datę - wielkość liter nie ma znaczenia.
np.
CZ1 = 1.03.2010
CZ2 = 2.03.2010
Najgorsze jest to, że otwierając dokument, (np xls który przyszedł mailem) z wpisanym tym ciągiem, zawartość komórki również zostaje zamieniona na datę :/

Czy orientuje się ktoś gdzie można wyłączyć tą konwersję? I czemu akurat CZx jest traktowany w taki sposób?
Próbowałem wyłączyć:
Narzędzia - zawartość - autouzupełnianie
Narzędzie - Opcje autokorekty - Opcje (wyłączyłem wszystkie)
Niestety bez zmian - konwersja tego ustrojstwa nadal jest aktywna.
OpenOffice3.2/WinXP/DEBIAN
Marek_Sz
Posty: 74
Rejestracja: pn lis 02, 2009 2:04 pm

Re: Dziwna konwersja str -> data

Post autor: Marek_Sz »

Rzeczywiście ciekawe. wpisanie "CZ1" daje datę 1.03.2010 czyli pierwszy dzień aktualnego miesiąca w aktualnym roku. Zmiana miesiąca wymaga już podania drugiej wartości po kropce, ukośniku czy myślniku. Podobnie w przypadku roku. Wpisanie "CZ40" nie da daty 40.03.2010 ani 10.04.2010 podobnie jak "CZ29.2" nie da daty 29.02.2010 bo takie dni nie istnieją. Wygląda na to, że jest to jakaś funkcjonalność związana z datą - może to pomoże rozwiązać problem (naprowadzi na właściwe rozwiązanie) - więcej nie jestem w stanie wykombinować ani znaleźć.

Jeżeli cz1 itp. mają być formatem tekstowym to wpisując te wartości należy poprzedzić je apostrofem. Przy bardziej zautomatyzowanym wprowadzaniu np. w wierszu 40 należy wpisać (bez apostrofu) "cz40" i przeciągając w górę otrzymamy wartości zmniejszone o 1 i nie będą one zamienione na datę nawet jeśli data odpowiadająca wpisowi istnieje (oczywiście problem pozostaje w momencie jeżeli nr po CZ odpowiada istniejącej dacie).

Nie mogę natomiast potwierdzić konwersji wartości z pliku EXCELA otwieranego przez CALCa. U mnie te wartości są automatycznie poprzedzone apostrofem i odczytywane jako tekst.
LibreOffice 5.0 na Windows 7 [praca] i LibreOffice 5.1 (64 bit) na Windows 7 [dom]
Jan_J
Posty: 4653
Rejestracja: pt maja 22, 2009 1:20 pm
Lokalizacja: Wrocław

Re: Dziwna konwersja str -> data

Post autor: Jan_J »

To ma jakiś związek z nazwami dni tygodnia. Np. pn02, śr22, pt13, ni18 zachowują się podobnie, choć niekoniecznie tak samo.
Np. ni66 --> 1.01.1966 (!!!)
Jakaś koszmarna heurystyka... nie wynika z autokorekty, z autoformatu ani z list sortowania, czyżby była na sztywno wpisana?
Na dodatek skutkuje tylko przyjęciem wpisu za datę, ale utworzona data nie ma związku z treścią wpisu...
JJ
LO (26.2) ∙ Python (3.13|3.10) ∙ Unicode 17 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
najmar11
Posty: 4
Rejestracja: czw lut 04, 2010 1:28 pm

Re: Dziwna konwersja str -> data

Post autor: najmar11 »

no faktycznie dziwne...

po wpisaniu tego tekstu zmienia format komórki z "liczba" na "data"

jeśli komórka ma format "tekst" to jej nie zmienia - i można wtedy wpisać "cz1" itp

Nie wiem czy Ci to pomoże - ale na szybko rozwiązanie jest takie, że zaznaczasz wszystkie komórki w arkuszu (albo jakiś interesujący Cię zakres) i zmieniasz ich domyślne formatowanie na "tekst" (ppm - format komórki - zakładka "liczby" - kategoria "tekst")
OOo 3.1.1, Kubuntu
mg2
Posty: 170
Rejestracja: czw sty 28, 2010 9:20 pm

Re: Dziwna konwersja str -> data

Post autor: mg2 »

Czy orientuje się ktoś gdzie można wyłączyć tą konwersję? I czemu akurat CZx jest traktowany w taki sposób?
Jak zauważył "Jan_J" wpis jest interpretowany jako data. Dokładniej mówiąc to domyślnie komórki są ustawione na "Format" -> "Liczba". Jeżeli wpisujemy coś innego to Calc automatycznie próbuje odgadnąć format danych. Na liście formatów komórki w dziale "Data" jest postać:

Kod: Zaznacz cały

Pt 31 XII 99
i właśnie do tego formatu Calc dopasowuje wprowadzony tekst tzn. uwzględnia początkowe informacje czyli dzień tygodnia oraz dzień. Ponieważ nie podano miesiąca ani roku Calc uzupełnia braki wartościami aktualnymi. Tak zinterpretowana data jest podawana w domyślnym formacie dla języka polskiego.

Jak podały poprzednie osoby, wpisując ciąg tekstowy:
- dopisuj apostrof na początku, czyli uprzedzaj Calc, że podajesz tekst bez dalszych interpretacji (jak poradził "Marek_Sz")
- sformatuj wstępnie komórki jako tekst (jak poradził "najmar11")
OOo3.1.1 na Ubuntu 9.04
Jan_J
Posty: 4653
Rejestracja: pt maja 22, 2009 1:20 pm
Lokalizacja: Wrocław

Re: Dziwna konwersja str -> data

Post autor: Jan_J »

uwzględnia początkowe informacje czyli dzień tygodnia oraz dzień. Ponieważ nie podano miesiąca ani roku Calc uzupełnia braki wartościami aktualnymi.
Niby tak. Ale po pierwsze primo, we wzorcu formatu jest spacja po nazwie dnia (czyli wprowadzony wpis nie pasuje do wzorca formatu), po drugie primo, że wstawiona data nie odpowiada wpisanemu DOW, a po trzecie, że to co się wstawi zależy od konkretnego dnia tygodnia (vide różnice w traktowaniu Pn i Ni).
JJ
LO (26.2) ∙ Python (3.13|3.10) ∙ Unicode 17 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
Pawouek
Posty: 2
Rejestracja: wt mar 09, 2010 10:11 am

Re: Dziwna konwersja str -> data

Post autor: Pawouek »

Jak podały poprzednie osoby, wpisując ciąg tekstowy:
- dopisuj apostrof na początku, czyli uprzedzaj Calc, że podajesz tekst bez dalszych interpretacji (jak poradził "Marek_Sz")
- sformatuj wstępnie komórki jako tekst (jak poradził "najmar11")
Niestety nie ja tworzę te dokumenty - dostaję coś takiego jako eksport z programu i to od kilku osób. Gdyby było tylko kilka sztuk wystąpień tych skrótów, to mógłbym to poprawiać ręcznie. Ale gdy dostaję raport z grubo ponad setką wystąpień skrótów od cz1 do cz34 to się można pochlastać. Zwłaszcza, że program w chwili otwarcia dokumentu robi tą konwersję :/

Serdeczne dzięki za pomoc i wyjaśnienia - jeśli ktoś wpadnie na pomysł jak to zdezaktywować, to będę dźwięczny.
mg2
Posty: 170
Rejestracja: czw sty 28, 2010 9:20 pm

Re: Dziwna konwersja str -> data

Post autor: mg2 »

W takim razie zmień ustawienia językowe

"Narzędzia" -> "Opcje" -> "Ustawienia językowe" -> "Języki"
  • Język
  • "Ustawienia lokalne" -> "Angielski (Wielka Brytania)" (przykładowo)
  • "Klawisz separatora dziesiętnego" -> "[ ] Tak samo jak w ustawieniach lokalnych" (odznacz)
  • "Waluta domyślna" -> "PLN zł Polski"
    Domyślny język dokumentów
  • "Zachodnie" -> "Polski"
PS

Można zmienić ustawienie stylu domyślnego komórek
"Formatuj" -> "Style i formatowanie" -> "Style komórki" -> "Domyślnie"
i tam ustawić język.

Można zrobić oddzielne style dla różnych języków np.: "styl_en", "styl_pl". Styl angielski ustawić jako domyślny. Po otworzeniu dokumentu zabezpieczyć wszystkie wartości typu "cz1" poprzez np.: formatowanie, znajdź->zamień, itp. Zmienić styl na polski.

PS 2

Można też ustawić, w domyślnym stylu komórek, formatowanie na "Tekst". Jednak wtedy trzeba ręcznie przeformatować komórki zawierające formuły i inne dane.

PS 3

Właściwie trudno powiedzieć czy jest to błąd w programie czy błąd użytkownika wprowadzającego dane. Jeżeli wprowadza się dane pewnego typu to powinno się wcześniej sformatować odpowiednio komórki.
Ostatnio zmieniony czw mar 11, 2010 3:05 pm przez mg2, łącznie zmieniany 1 raz.
OOo3.1.1 na Ubuntu 9.04
Jan_J
Posty: 4653
Rejestracja: pt maja 22, 2009 1:20 pm
Lokalizacja: Wrocław

Re: Dziwna konwersja str -> data

Post autor: Jan_J »

Dodam tylko, że sprawa nie jest nowa. Właśnie z ciekawości sprawdziłem Ooo 2.4.1 (Portable dla Win32, ale to nie jest istotne). Tak samo.
Takich ,,nierozpakowanych prezentów'' na pewno jest dużo więcej.
JJ
LO (26.2) ∙ Python (3.13|3.10) ∙ Unicode 17 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
ODPOWIEDZ