Import danych z pliku tekstowego CSV i TXT

18/04/2016Excel Tutoriale Komentarze (9) Wrzuć na FB

Za pomocą programu Excel mamy możliwość importowania do arkusza kalkulacyjnego danych zapisanych w pliku tekstowym. W niniejszym poradniku przedstawimy to na przykładzie Excela w wersji z 2013.

W celu przeniesienia do arkusza kalkulacyjnego programu Excel danych pochodzących innego systemu, dane tabelaryczne można zapisać w pliku tekstowym. W tym celu powstał specjalny format pliku CSV (ang. Comma Separated Values, pol. Wartości rozdzielone przecinkami). Dane w nim zapisane można edytować za pomocą najprostszego edytora tekstu, co można wykorzystać do tworzenia arkusza danych np. za pomocą programu Notatnik. Służy do tego prosta składnia: kolejne wiersze tekstu odpowiadają poszczególnym wierszom tabeli, w każdym wierszu kolejne wartości rozdzielone są separatorami. Dane tabelaryczne w mające znaleźć się w 6 wierszach i 3 kolumnach można zapisać następująco:

imię;nazwisko;telefon
jan;kowalski;2222222
danuta;rogalińska;785126998
zbigniew;milewczuk;669447649
anna;piekarska;887445962
kasia;alicja;666666666

Zamiast średnika jako separatora danych można użyć innego znaku – przecinka (zgodnie z nazwą formatu) lub tabulatora. W systemach z polskimi ustawieniami regionalnymi najlepiej nie używać przecinka (o tym z jakiego powodu zostanie wyjaśnione w dalszej części poradnika).

Jak poprawnie zaimportować dane z pliku CSV

Plik zapisany w formacie CSV ma tę zaletę, że można go bezpośrednio otworzyć programem Excel. Trzeba jednak zwrócić uwagę na znak separatora. Jak już wspomniano nie powinno się używać w tym celu przecinka, lecz średnik. Ponieważ w Polsce przecinek jest używany jako separator dziesiętny, przy polskich ustawieniach regionalnych przecinek zastosowany jako separator danych spowoduje niepoprawny odczyt, nawet wtedy, gdy nie mamy wśród danych ułamków dziesiętnych. W takiej sytuacji można zastosować drugi sposób opisany poniżej.

Jak zaimportować dane z dowolnego pliku tekstowego

Za pomocą programu Excel możemy pobierać do arkusza kalkulacyjnego także dane ze zwykłego pliku tekstowego w standardowym formacie TXT. Nie jest zatem konieczne zapisywanie pliku w formacie CSV.

Aby zaimportować dane z dowolnego pliku tekstowego należy na karcie Dane kliknąć opcję Z tekstu, a następnie wybrać plik tekstowy.

excel-import-pliku-csv-1

W pierwszym oknie kreatora importu wybieramy typ pliku (Rozdzielany), kodowanie (dla języka polskiego Środkowoeuropejski albo UTF-8), ewentualnie numer wiersza od którego rozpoczynamy import i klikamy dalej.

excel-import-pliku-csv-2

W kolejnym oknie wybieramy znak separatora – jak widać może nim być dowolny znak. W dolnej części okna znajduje się podgląd danych, na którym możemy zobaczyć, czy dane z pliku zostaną zaimportowane poprawnie.

excel-import-pliku-csv-3

W ostatnim oknie kreatora możemy wskazać rodzaje danych znajdujące się w kolejnych kolumnach tabeli lub też pominąć wybrane kolumny.

excel-import-pliku-csv-4

Po zakończeniu działania kreatora dane zostaną wprowadzone do arkusza kalkulacyjnego.

excel-import-pliku-csv-5

Dodaj komentarz

Dodając komentarz akceptujesz politykę prywatności (przeczytaj). Twój adres email nie zostanie opublikowany.
Pola, których wypełnienie jest wymagane, są oznaczone symbolem *

Komentarze

  • IGor pisze:

    Próbuję zaimportować do excela dane z pliku tekstowego zawierającego 3 mln wierszy (15 znaków w wierszu). W pierwszym podejściu excel importuje pierwszy milion (dokładnie 1 048 576) wierszy. Jednak przy probie zaimportowania dalszego fragmentu pliku przy podaniu numeru kolejnego pierwszego wiersza 1048577 do zaimportowania excel nie pobiera kolejnego miliona wierszy (ani do nowego arkusza, ani do nowej kolumny w tym samym arkuszu), a jedynie ten jeden wskazany wiersz tekstu. Jak sobie z tym poradzić?

    • Absolwenci na walizkach pisze:

      W Excelu jest 1 048 576 wierszy, więcej nie sposób zaimportować wierszy do 1 arkusza. Można podzielić ręcznie plik tekstowy na 3 mniejsze 3 pliki tekstowe i potem pojedynczo importować to do osobnych arkuszy.

      • IGor pisze:

        Ale próba polegała na tym, żeby zaimportować dane w 3-ech lub 4-ech krokach za każdym razem podając wiersz w pliku źródłowym, od którego ma się zacząć import. Niestety jaką wartość by nie podać (nr wiersza) excel importuje począwszy od tego wiersza (np. od 100-tysięcznego) do wiersza 1048576 i kropka. Przecież te dane powinno dać się zaimportować do 4-ech osobnycch arkuszy lub nawet 4-ech kolumn w tym samym arkuszu wykonując to w kilku krokach (ostatecznie nawet do kilku różnych plików), ale wygląda na to, że excel nie czyta tych dalszych wierszy pliku źródłowego.
        Oczywiście chętnie podzielę plik źródłowy .txt na 3-4 części, tylko nie mam pojęcia, jak to zrobić przy ponad 3-ch milionach wierszy. Żadne skróty klawiszowe do zaznaczania wierszy tekstu nie działają.

    • Absolwenci na walizkach pisze:

      Można sobie z tym poradzić m. in. tak, że tak duży plik załadować bezpośrednio do Power Pivot, dodatku Business Intelligence w Excelu. Tam są narzędzie do analizy danych, być może to Ci wystarczy.

      • IGor pisze:

        Czy w excelu 2013 są takie dodatki? Niestety niczego takiego nie znajduję.

  • Marcin pisze:

    Dlaczego podczas zapisu danych przez urządzenie pomiarowe (dane temperatury np 21,3 st. C) w pliku csv, podczas otwarcia pliku w arkuszu excel program konwertuje dane liczbowe na daty (otrzymujemy wartość 21.03.2018). Jaka jest możliwość konwersji danych aby moglibyśmy otrzymać właściwie wyświetlone dane. Z góry dziękuję za pomoc.
    Pozdrawiam

    • Absolwenci na walizkach pisze:

      Prawdopodobnie tak się dzieje, gdyż w arkuszu w polach, gdzie są importowane te wartości jest już takie formatowanie ustawione. W trzecim kroku importu proszę ustawić na tej kolumnie format Ogólny.

  • Imię pisze:

    Dlaczego domyślnie ustawiono Tabulator i za każdym razem trzeba powtarzać to samo.
    Powinno dać się zmienić te domyślne ustawienia tak aby po kliknięciu na plik csv dokonało się natychmiastowe otwarcie pliku Excela. Tak mamy sporo klikania jak bocian.Pozdrawiam.
    P,s.
    może jest taka możliwość tylko ja nie wiem jak to zrobić.

    • Dariusz Grochocki pisze:

      No niestety, zawsze domyślny jest tabulator. Zwróć uwagę na to, że nie musisz odznaczać tej opcji. Jeśli Twoim ogranicznikiem jest średnik, możesz zostawić zaznaczony tabulator zaznaczając jednocześnie średnik 🙂