Estrarre i dati da un PDF e portarli in Excel con l'intelligenza artificiale
In breve: per portare i dati di un PDF in Excel senza ricopiarli servono due cose, e la seconda conta più della prima. La prima è l'estrazione: un software legge il documento e ne tira fuori le righe. La seconda è il controllo di quadratura: la somma dei valori estratti deve tornare con il totale che il documento dichiara, e le righe su cui il sistema non è sicuro devono essere marcate una per una. Un estrattore che non fa la seconda cosa vi restituisce un foglio che sembra giusto, e non sapete dove guardare.
Prima domanda: che PDF avete davanti
Non sono tutti uguali, e il tipo decide quanto è affidabile il risultato.
- PDF nativo (generato da un software: gestionale, portale, software di computo). Il testo è dentro il file, con le sue coordinate. Qui l'estrazione può essere esatta, cifra per cifra.
- PDF scansionato (un foglio passato allo scanner, o una foto). Il testo non c'è: va riconosciuto da un OCR, e il riconoscimento di un numero può sbagliare. Su una scansione il controllo di quadratura non è un extra, è l'unica difesa che avete.
- PDF nativo ma con tabelle finte: righe e colonne disegnate, celle che non esistono come struttura. È il caso più frequente nei documenti di filiera, ed è dove i convertitori generici si rompono.
Perché un convertitore PDF generico non basta
I convertitori da PDF a Excel leggono il documento come una pagina stampata, non come un elenco di voci con un significato. Sui documenti veri inciampano sempre negli stessi punti:
- le descrizioni lunghe vanno a capo e finiscono spezzate su più celle;
- le intestazioni e i riporti ripetuti a ogni pagina diventano righe di dati;
- i totali parziali vengono trattati come voci e sommati due volte;
- i numeri arrivano in Excel come testo, quindi non si possono sommare né filtrare;
- le celle unite e i riquadri disegnati spostano le colonne, e il foglio va ricomposto a mano prima di poterci lavorare.
Il risultato è un file da ripulire. E senza un confronto col totale del documento di partenza non avete modo di sapere se nel passaggio si è persa una riga.
«E se lo faccio fare a ChatGPT?»
È la prima cosa che quasi tutti provano, e la domanda che ci fanno più spesso. La risposta onesta è: per le descrizioni funziona discretamente, sui numeri va messo un vincolo.
Un modello generico ha un comportamento che in questo lavoro è un difetto: quando una cifra è poco leggibile, produce comunque un valore plausibile, senza dire che non era sicuro. Non lo fa per malizia, è come funziona: completa. Su un documento da trecento righe questo significa che un numero sbagliato vi arriva in mezzo a duecentonovantanove giusti, con lo stesso aspetto.
Il modo di usarlo bene è dividere i compiti. L'estrazione dei numeri resta deterministica(ancorata alle coordinate del PDF, senza invenzioni possibili) e il modello linguistico fa quello in cui è bravo: ricomporre una descrizione spezzata, riconoscere che due diciture diverse indicano la stessa cosa, capire quale colonna è l'importo. Poi si somma e si confronta col totale dichiarato.
Il controllo che decide tutto: il totale deve tornare
Un documento con dei valori porta quasi sempre un totale dichiarato. Quel numero è gratis, e va usato: se la somma delle righe estratte coincide col totale del documento, non manca niente e non c'è niente duplicato. Se non coincide, lo sapete nel momento dell'estrazione, non tre settimane dopo, quando il dato è già girato.
Per uno studio di progettazione che lavora su gare d'appalto abbiamo costruito un estrattore così. Diciamo subito il settore perché è un settore diverso dal vostro: il documento erano computi metrici, e il meccanismo è lo stesso per ogni documento di filiera che porta righe e un totale.
| Documento | Righe estratte | Esito del controllo |
|---|---|---|
| Totale dichiarato 17.173.312,66 € | 857 | Somma estratta 17.173.312,75 €: 9 centesimi di scarto, da arrotondamento |
| Totale dichiarato 5.396.164,39 € | 347 | 52 righe marcate come incerte, da controllare a mano: non tutte e 347 |
| Test di collaudo | 342 | Zero errori sulla parte numerica, righe dubbie evidenziate per la revisione |
Il secondo numero conta quanto il primo, e per noi di più. Cinquantadue righe su trecentoquarantasette vuol dire che il controllo umano resta, ma si fa dove serve. Un estrattore che non vi dice mai di non essere sicuro non è più preciso: è solo più silenzioso.
Il caso per intero, con il prima e il dopo, è qui: il computo di gara arriva in PDF, e ricopiarlo costava una giornata.
Dove si applica, fuori dal caso che abbiamo raccontato
Lo schema «righe + totale dichiarato» copre buona parte dei documenti che entrano in un'azienda ogni giorno:
- fatture e DDT dei fornitori, dove le righe vanno riconciliate con l'ordine prima di essere registrate;
- conferme d'ordine ricevute in PDF e ribattute a mano nel gestionale;
- listini e offerte che arrivano come documento e servono come tabella;
- report di noleggio, di consumo o di produzione che il fornitore manda stampati e che qualcuno riporta in Excel per poterli leggere.
In tutti questi casi il valore non è «l'AI che legge il PDF»: è che il dato entra una volta sola, con un controllo che dice se è entrato bene.
Cinque domande da fare a chi vi vende un estrattore
- Confronta la somma delle righe estratte con il totale dichiarato nel documento, e vi dice di quanto scarta?
- Segnala le righe su cui non è sicuro, o le mette in tabella identiche alle altre?
- I numeri li estrae in modo deterministico, o li fa riscrivere a un modello linguistico?
- Riconosce i tracciati che ricevete davvero voi, e cosa fa davanti a un formato mai visto?
- L'Excel che produce si può lavorare subito (quantità e prezzi come numeri, descrizioni intere) o va ripulito prima?
Se le prime due risposte non sono chiare, il resto conta poco: state comprando velocità senza un modo di accorgervi degli errori.
Da dove si comincia
Non dall'estrattore. Si comincia guardando il documento che vi arriva più spesso e chiedendosi dove finisce quel dato: in un Excel, nel gestionale, in un'offerta. L'automazione utile è quella che copre il passaggio intero, non solo la lettura. È il motivo per cui partiamo sempre da un'analisi del processo con chi lo fa ogni giorno, e solo dopo dall'automazione su misura.
Domande frequenti
- Come si estraggono i dati da un PDF e si portano in Excel?
- Con un software che legge il documento e ne estrae le righe. Se il PDF è nativo l'estrazione può essere esatta; se è una scansione serve un OCR e il rischio di errore sale. In tutti i casi va confrontata la somma dei valori estratti con il totale dichiarato nel documento: è il controllo che dice se si è persa o duplicata una riga.
- L'intelligenza artificiale può inventare i numeri estratti da un PDF?
- Un modello linguistico generico, davanti a una cifra poco leggibile, tende a produrre comunque un valore plausibile senza segnalare l'incertezza. Per questo i numeri vanno estratti in modo deterministico, ancorati al documento, e il modello va usato per ricomporre le descrizioni e riconoscere le colonne. Poi il totale va riconciliato.
- Perché un convertitore da PDF a Excel sbaglia le tabelle?
- Perché legge il documento come una pagina e non come un elenco di voci: le descrizioni lunghe si spezzano su più celle, le intestazioni ripetute a ogni pagina diventano righe di dati, i totali parziali vengono sommati due volte e i numeri arrivano in Excel come testo.
- Si può estrarre un PDF scansionato?
- Sì, con un OCR, ma il riconoscimento di una cifra può sbagliare e il sistema deve dirvelo. Su una scansione il confronto con il totale dichiarato e la marcatura delle righe incerte sono l'unica difesa: senza, un numero sbagliato arriva in mezzo a quelli giusti con lo stesso aspetto.
- Quanto controllo umano resta dopo un estrattore ben fatto?
- Resta, e deve restare: cambia dove si spende. Su un documento di 347 righe il sistema che abbiamo costruito per uno studio di progettazione ne ha marcate 52 come incerte: il controllo si fa su quelle, non su tutte.