ParseJet

Tabellen uit een PDF halen

Kopieer een tabel uit een PDF en plak hem in Excel, en meestal krijg je één lange kolom met door elkaar gehusselde waarden — of helemaal niets. Dat ligt niet aan jou: PDF's slaan tabellen namelijk niet echt op. Deze gids vergelijkt de 4 methodes die werken, van snelle kopieer-plaktrucs tot tools die gescande documenten aankunnen, zodat je de juiste kiest voor jouw bestand.

Waarom tabellen uit een PDF zo lastig te extraheren zijn

Een PDF kent geen concept 'tabel'. Wat eruitziet als rijen en kolommen is niets meer dan losse tekstfragmenten op x/y-coördinaten, soms met getekende lijnen ertussen. De "tabel" bestaat alleen in jouw ogen — het bestand slaat geen cellen, geen rijen en geen kopregel op.

Elke extractiemethode is daarom reconstructie: een algoritme dat gokt welke tekstfragmenten bij dezelfde cel horen, welke cellen samen een rij vormen en waar kolommen beginnen. Tabellen met zichtbare rasterlijnen zijn makkelijker te reconstrueren; tabellen die alleen met witruimte zijn gescheiden, samengevoegde cellen, meerregelige cellen en tabellen over meerdere pagina's zijn de plekken waar de meeste tools falen.

Gescande PDF's voegen nog een laag toe: de pagina is een foto, dus er is helemaal geen tekst totdat OCR heeft gedraaid. Kies je methode op basis van welke van deze problemen jouw document heeft.

Methode 1: kopiëren en plakken in Excel (snel, kleine tabellen met rasterlijnen)

Voor een simpele tabel met nette rasterlijnen: selecteer hem in je PDF-viewer, kopieer, en plak in Excel of Google Sheets. Komt alles in één kolom terecht, gebruik dan Gegevens → Tekst naar kolommen (Excel) of Gegevens → Tekst naar kolommen splitsen (Sheets) om de waarden opnieuw te splitsen.

Een handige variant: plak eerst in een kale teksteditor om te zien welke structuur het heeft overleefd. Zijn de waarden gescheiden door consistente spaties of tabs, dan haalt Tekst naar kolommen de tabel terug; lopen de rijen door elkaar of zijn ze afgekapt, dan lost geen enkele splitsing dat nog op.

Wanneer dit werkt: tabellen met rasterlijnen op één pagina, met korte celwaarden. Wanneer het faalt: samengevoegde cellen, meerregelige tekst in cellen, getallen met duizendtalscheiders die uit elkaar worden getrokken, en elk gescand document.

Methode 2: Excel Power Query of Word (ingebouwd, geen extra tools)

Modern Excel kan PDF-tabellen rechtstreeks importeren: Gegevens → Gegevens ophalen → Uit bestand → Uit PDF. Excel scant het document, toont elke gedetecteerde tabel met een voorbeeld — kies de tabel, klik op Laden, en hij landt als een echt spreadsheetbereik. Dit is de beste ingebouwde optie op Windows (het vereist een Microsoft 365- of 2021+-licentie en is niet in alle versies van Excel voor Mac beschikbaar).

Word kan PDF's ook rechtstreeks openen (Bestand → Openen → selecteer de PDF). Het converteert het document naar een bewerkbaar bestand, en simpele tabellen overleven meestal als echte Word-tabellen die je naar Excel kunt kopiëren.

Wanneer dit werkt: digitaal gemaakte PDF's met duidelijke rasterlijnen. Wanneer het faalt: tabellen met alleen witruimte worden vaak gemist of verkeerd gesplitst, tabellen over meerdere pagina's importeren als losse fragmenten, en gescande PDF's leveren niets op — Power Query doet geen OCR.

Methode 3: Python-libraries — camelot, tabula-py, pdfplumber (developers)

Moet je programmatisch tabellen uit veel PDF's extraheren, dan zijn de gevestigde open-sourceopties camelot (het beste op tabellen met rasterlijnen, twee detectiemodi), tabula-py (een wrapper om de Java-engine Tabula, degelijk bij consistente lay-outs) en pdfplumber (low-level controle over woorden, lijnen en rechthoeken — het beste als je eigen logica nodig hebt).

Een minimaal camelot-voorbeeld: pip install camelot-py[cv], daarna tables = camelot.read_pdf("report.pdf", pages="all") en tables[0].df geeft je een pandas-DataFrame. Exporteren doe je met .to_csv() of .to_excel().

De adder onder het gras: elke library heeft een lay-outstijl waar hij van houdt, en echte documenten mixen stijlen. Reken erop dat je instellingen per documentfamilie moet tunen (flavor="stream" versus "lattice" in camelot, gebiedshints in tabula), en geen van de drie kan met gescande PDF's overweg — dan zou je eerst OCR moeten draaien en verlies je onderweg de lay-out.

Voor een bredere blik op PDF-parsing in Python, verder dan alleen tabellen, zie onze gids over PDF naar Markdown converteren in Python.

Methode 4: AI-extractie (gescande PDF's, gemengde lay-outs, schaal)

De nieuwste aanpak gebruikt document-understanding-modellen die de pagina lezen zoals een mens dat doet — ze herkennen tabelstructuur aan de visuele lay-out, in plaats van te leunen op rasterlijnen of coördinaatheuristieken. Dit is de enige klasse methodes die gescande documenten, gefotografeerde pagina's en inconsistente lay-outs in één keer aankan.

ParseJet werkt zo: upload een PDF op parsejet.com/tools/pdf-to-markdown en tabellen komen terug als schone Markdown-tabellen in leesvolgorde — gescande pagina's worden automatisch met OCR verwerkt. Wil je data in plaats van tekst, dan geeft de API het geparseerde document terug als gestructureerde output (zie de PDF naar JSON-tool), en met één POST-request per bestand is het praktisch voor batchpijplijnen.

Wanneer dit werkt: gescande en gefotografeerde documenten, gemengde lay-outs met en zonder rasterlijnen, en batchverwerking waar tunen per document onmogelijk is. De afweging: het is een gehoste dienst — voor één losse tabel uit een schone PDF is methode 1 of 2 sneller.

Welke methode moet je kiezen?

Eén kleine tabel met rasterlijnen, eenmalig: kopiëren-plakken (methode 1), met Excel Power Query (methode 2) als terugvaloptie wanneer het plakken misgaat.

Terugkerende rapporten met dezelfde lay-out: Power Query voor spreadsheetgebruikers, camelot of tabula-py (methode 3) voor developers — een eenmalige opzet verdient zich bij elk volgend bestand terug.

Gescande documenten, foto's of rommelige gemengde lay-outs: AI-extractie (methode 4) is realistisch gezien de enige optie zonder overtypen.

Honderden documenten met wisselende lay-outs: methode 4 via de API — het per document tunen van methode-3-libraries schaalt niet voorbij een handvol lay-outfamilies.

Extraheer tabellen uit elke PDF — ook scans

Upload een PDF en krijg elke tabel terug als schone Markdown, in leesvolgorde, met gescande pagina's automatisch via OCR verwerkt. Gratis te proberen, zonder aanmelden.

Probeer PDF naar Markdown

Veelgestelde vragen

Hoe haal ik een tabel uit een PDF naar Excel?

Probeer eerst de ingebouwde importfunctie van Excel: Gegevens → Gegevens ophalen → Uit bestand → Uit PDF, en kies de gedetecteerde tabel. Mist Excel de tabel of verminkt hij hem — gebruikelijk bij tabellen zonder rasterlijnen of bij scans — extraheer dan met een AI-tool zoals ParseJet en plak de Markdown-tabel in Excel.

Kan ik tabellen uit een gescande PDF halen?

Alleen met tools die OCR kunnen. Kopiëren-plakken, Power Query en Python-tabellibraries hebben allemaal echte tekst nodig. AI-extractors draaien eerst OCR op de pagina en reconstrueren daarna de tabel — upload de scan naar ParseJet en de tabel komt terug als tekst.

Wat is de beste Python-library voor tabelextractie uit PDF's?

camelot voor tabellen met rasterlijnen, tabula-py voor consistente rapportlay-outs, pdfplumber als je eigen low-level logica nodig hebt. Alle drie vereisen tuning per lay-out en geen van de drie kan gescande pagina's aan, dus pijplijnen met rommelige input eindigen meestal bij een parsing-API.

Waarom belandt mijn geplakte tabel in één kolom?

Je PDF-viewer heeft de rijfragmenten van de tabel geserialiseerd als platte regels met spaties, en Excel plakte elke regel in één cel. Gebruik Tekst naar kolommen om opnieuw te splitsen, of kies een methode die de tabelstructuur reconstrueert (Power Query of een extractietool).

Hoe extraheren tabellen met samengevoegde cellen?

Slecht, in de meeste tools — samengevoegde cellen breken het rij/kolomraster waar elke heuristiek op leunt. Structuurbewuste extractie gaat er het beste mee om; reken erop dat je samengevoegde gebieden handmatig controleert, welke methode je ook gebruikt.

Kan ik automatisch tabellen uit veel PDF's halen?

Ja — POST elk bestand naar een parsing-API. Bij ParseJet geeft /v1/parse/auto/file het document terug met tabellen als Markdown (of gestructureerde JSON), en een gratis API-account bevat 300 credits per maand.

Start gratis met tekst extraheren

Geen aanmelding nodig. Parse je eerste bestand in seconden.

Bekijk Prijzen