PDF do Excel
online
Wyodrębnij tabele z PDF do edytowalnych skoroszytów Excela. Wykrywanie i parsowanie odbywają się w całości w Twojej przeglądarce.
Sprawdź sam: otwórz DevTools → zakładkę Network → upuść plik. Zobacz, że nie ma żadnych przesłań.
Trzy kroki. Zero przesyłania.
Upuść PDF
Wczytaj do pamięci przeglądarki.
Wykryj tabele
Wyznaczamy granice tabel i parsujemy komórki po stronie klienta.
Pobierz XLSX
Otwórz w Excelu, Numbers lub Arkuszach Google.
Gdy tabela siedzi w PDF, a potrzebna jako tabela
Powody zwykle wyłaniają się po cudzym wyborze formatu. Bank przesyła wyciąg jako PDF, a ty chcesz wrzucić transakcje do arkusza i zsumować kategorię. Cennik od dostawcy jest w PDF, a ty chcesz porównać go z poprzednim kwartałem. Regulator publikuje tabele danych tylko w PDF i potrzebujesz ich jako komórek, żeby sortować i filtrować. Zeskrapowany raport jest w PDF i chcesz, żeby każdy wiersz był wierszem. We wszystkich tych przypadkach liczby istnieją; po prostu nie zachowują się jak liczby, bo są zamknięte w składzie.
Zadanie tutaj: odzyskać wiersze i kolumny — wziąć PDF, oddać .xlsx, w którym każda strona to osobny arkusz, każdy wiersz to wiersz, każda kolumna to kolumna. Stamtąd możesz sortować, filtrować, sumować, robić tabele przestawne — to, do czego arkusze służą.
Dlaczego to zgadywanie — i całkiem niezłe
PDF nie przechowuje tabel. Wewnątrz strona to płaski strumień fragmentów tekstu z pozycjami x/y na płótnie. Nigdzie nie ma „to jest wiersz" ani „tu zaczyna się kolumna" — te struktury istnieją tylko w twoim oku, kiedy czytasz. Odzyskanie ich znaczy wyprowadzić siatkę z tego, gdzie tekst faktycznie siedzi.
Narzędzie robi to w kilku etapach. Najpierw grupuje fragmenty tekstu w wiersze według y: jeśli dwa fragmenty są w pionie blisko (mniej więcej połowa wysokości linii), należą do tego samego wiersza. Potem w obrębie wiersza fragmenty leżące blisko siebie w poziomie scalają się w jedną komórkę (zwykłe odstępy między literami), a większe odstępy stają się granicami komórek (przerwy między kolumnami). Na koniec narzędzie patrzy, gdzie komórki zaczynają się na całej stronie, znajduje dominujące pozycje x i traktuje je jako środki kolumn — każda komórka trafia do najbliższej. Powstaje prostokątna siatka, której potrzebuje arkusz.
Co algorytm robi dobrze
- Zwykłe tabele finansowe — wyciągi, faktury, cenniki, raporty kosztów. Jeden wiersz na zapis, czyste przerwy między kolumnami, liczby wyrównane do prawej: dokładnie ten przypadek, pod który heurystyka była strojona, i zazwyczaj idzie poprawnie.
- Wpisy jednowierszowe. Kiedy każdy zapis mieści się w jednym wierszu, wykrywanie wierszy jest niezawodne.
- Tabele na pełną szerokość strony. Wykrywanie kolumn działa najlepiej, gdy kolumny są dobrze rozdzielone i stałe na całej stronie.
- Wyrównanie do prawej i do lewej. Narzędzie radzi sobie z oboma — istotna jest rozpoznawalna szczelina między kolumnami.
Gdzie ma kłopot
- Komórki ze zawijaniem. Komórka, której wartość przeszła na drugi wiersz — długi opis produktu, wielowierszowy adres — zazwyczaj rozdziela się na dwa wiersze. Naprawia to lekka ręczna korekta w arkuszu (albo lepiej przez pdf-to-txt i ręczne złożenie tabeli, jeśli korekta nie jest tego warta).
- Komórki scalone. Nagłówek, który wizualnie obejmuje dwie kolumny, pojawi się tylko w jednej — najbliższej. Scalenie zobaczysz jako wartość w kolumnie A i puste B.
- Dwie tabele obok siebie. Detektor kolumn widzi obie naraz i może je skleić w jedną szeroką. Pomaga rozciąć PDF na pół z wyprzedzeniem.
- Tekst akapitowy na tej samej stronie co tabela. Akapit nad tabelą wniesie własne „wiersze" tekstu — kilka wierszy, które wierszami nie są, łatwo usunąć.
- Tabele wielostronicowe. Każda strona stanie się osobnym arkuszem. Aby zszyć je w jedną ciągłą tabelę, skopiuj i wklej sekcje danych po ekstrakcji.
- Skanowane PDF-y. To samo zastrzeżenie co przy każdej ekstrakcji tekstu: jeśli strona to obraz (zeskanowany wyciąg, sfotografowany paragon), nie ma czego czytać. Najpierw OCR w innym narzędziu.
Co dostajesz na końcu
Jeden plik .xlsx. Każda strona PDF staje się własnym arkuszem o nazwie Page 1, Page 2 itd. Otworzy się w Excelu, Numbers, Arkuszach Google, LibreOffice — w każdym. Komórki to zwykłe wartości; bez formatowania, formuł, stylów. Sens polega na tym, że liczby są teraz liczbami, a kolumny kolumnami.
Jeśli wolisz CSV niż xlsx, zapisz arkusz jako CSV w swojej aplikacji — to jedno menu dalej.
Uwagi praktyczne
- Jeśli PDF jest zabezpieczony hasłem, najpierw przez unlock-pdf. Zaszyfrowanych PDF-ów nie da się otworzyć do ekstrakcji komórek.
- Dla bardzo szerokich tabel pomaga obrócenie źródłowego PDF-a do orientacji poziomej przed ekstrakcją — mniej kolumn, czystsze przerwy. Obrót robi edit-pdf.
- Jeśli potrzebujesz tylko tekstu bez struktury, pdf-to-txt jest szybszy, a wynik łatwiej przeformatować.
- Operacja odwrotna — włożyć arkusz Excela do PDF-a — to excel-to-pdf.
Co dzieje się z twoim plikiem
Ekstrakcja działa w twojej przeglądarce. Otwórz DevTools i obserwuj kartę Network podczas operacji — żadnych wychodzących żądań z zawartością pliku. PDF zostaje na dysku; .xlsx to nowe pobranie obok.
Najczęstsze pytania
Czy mój PDF jest przesyłany?
Nie. Wykrywanie i parsowanie odbywają się w całości w Twojej przeglądarce. Plik nie opuszcza urządzenia.
Czy działa na zeskanowanych PDF (OCR)?
Zeskanowane tabele potrzebują OCR, by stać się edytowalnymi komórkami. PDF-y tekstowe (z zaznaczalnym tekstem) ekstrahują się bezpośrednio.
Jak dokładne jest wykrywanie tabel?
Tabele z liniami i dobrze rozmieszczone siatki wyciągają się czysto. Komórki scalone i tabele bez obramowania mogą wymagać ręcznego sprawdzenia.
Czy mogę wybrać konkretne strony?
Tak. Podaj zakres stron, by wydobyć tabele tylko z potrzebnych miejsc.