Tablora

Tablora · Biblioteka

Oddziel granice pól od znaków dziesiętnych

W tabeli rozdzielanej średnikami, takiej jak Paper;1.234,50, przecinek jest znakiem dziesiętnym. Najpierw ustal granice pól, a potem przekonwertuj kwoty.

Dwa zadania dla interpunkcji

Arkusze ustawione na język niemiecki, francuski, hiszpański, turecki i wiele innych zapisują pliki CSV ze średnikami między polami, bo przecinek jest już zajęty jako znak dziesiętny. Linia taka jak Paper;1.234,50 ma jedną granicę pola, średnik, oraz dwa znaki wewnątrz kwoty, które należą do liczby.

Potrzebne są dwie osobne decyzje: który znak oddziela pola i jak zapisano cyfry w kolumnie kwot. Pomylenie ich sprawia, że jedna kwota zostaje rozdzielona na dwie komórki.

Analiza Paper;1.234,50

Przykład na stronie to nagłówek item;amount i rekord Paper;1.234,50, a separatorem pól jest średnik. Analizator zgłasza 2 wiersze i 2 kolumny, a wiersz 2, kolumna 2 zawiera 1.234,50. Na tym etapie kwota jest nadal tekstem; analizator nie konwertuje liczb.

Jeśli zamiast tego wybierzesz przecinek jako Separator pól, nagłówek stanie się jedną komórką, item;amount, a rekord rozdzieli się na Paper;1.234 i 50. Kolumny pokażą wtedy 2, a Wiersze o innej szerokości 1, bo nagłówek ma tylko jedno pole. Wykryj separator wybiera w tym przykładzie średnik, bo daje on każdemu wierszowi tę samą szerokość.

Od struktury do liczb

Źródła nieporozumień

Dane wejściowe

Tekst tabeli
item;amount Paper;1.234,50
Separator pól
;

Wyniki

Wiersze
2
Kolumny
2
itemamount
Paper1.234,50
Wiersze o innej szerokości
0