In questo articolo, scoprirai passo passo come ricavare alcune informazioni dal codice fiscale e sarai in grado di comprendere come trasferire questi calcoli su Excel. Il calcolo del codice fiscale inverso può tornare utile per avere un'idea di massima sulla persona, pur non arrivando a un grado di dettaglio eccezionale. Cliccando il pulsante, potrai scaricare un file dedicato per utilizzarlo quando preferisci.
Purtroppo con questo metodo non è possibile ricavare tutte le informazioni da un singolo codice fiscale. Ci sarà impossibile scoprire quali siano il cognome e il nome, per esempio.
Per tutte le regole collegate con la creazione di un codice fiscale, c'è un articolo dedicato. Clicca sul link seguente per scoprire come calcolare il codice fiscale.
Per navigare nell'articolo, puoi cliccare su questi link:
Data di nascita | Anno di nascita | Sesso | Comune di nascita| Conclusione
Decodifica codice fiscale o calcolo del codice fiscale inverso
Il codice fiscale è composto da numerose parti che seguono regole particolari e si origina da alcuni dati per una singola persona. Per procedere ci servono, per una singola persona:
- Cognome, che restituirà 3 caratteri
- Nome, che restituirà altri 3 caratteri (totale 3+3 = 6)
- Data di nascita, che restituirà ulteriori 3 caratteri (totale 3+3+3 = 9)
- Sesso, un carattere (totale 9+1 = 10)
- Comune di nascita, altri 4 caratteri (totale 10+4 = 14)
- Carattere di controllo finale, un carattere (totale 14+1 = 15)
1. Decodifica codice fiscale: la data di nascita
Possiamo trovare la data di nascita dal singolo codice fiscale grazie a una combinazione di formule. Ricordiamo che ci sono differenze fra uomo e donna in un singolo codice fiscale.
CF: codice fiscale di un uomo
In questo caso, i caratteri #10 e #11 del codice fiscale sono il giorno di nascita della persona di riferimento. Quindi per un uomo nato il 12 di Agosto, i caratteri sarebbero 1 e 2
CF: codice fiscale di una donna
Per un codice fiscale femminile, i caratteri #10 e #11 del codice fiscale sono il giorno di nascita della persona di riferimento cui si aggiunge 40. Quindi per una donna nata il 12 Agosto, i caratteri sarebbero 5 e 2 anzichè 1 e 2 come nel caso precedente
CF: ottenere il mese dal codice fiscale
Non vi è differenza in questo caso, ma è necessario fare una ricerca in una lista separata del carattere #9 del codice fiscale totale. Ad esempio H è pari a 06, ovvero Giugno
Formula per ricavare la data di nascita dal codice fiscale
=CONCAT(
CONCAT ci permette di unire diverse parti nella stessa cella. In questo caso vogliamo unire il giorno e il mese di nascita. Volendo potremmo anche utilizzare CONCATENA che è la versione precedente di questa stessa funzione
SE(NUMERO.VALORE(STRINGA.ESTRAI(E3;10;2))>31;STRINGA.ESTRAI(E3;10;2)-40;STRINGA.ESTRAI(E3;10;2));"/";
In questo caso stiamo dicendo che SE il valore estratto dal codice fiscale è superiore a 31, allora dobbiamo ottenere questo numero e sottrarre 40 perchè è il codice fiscale di una donna. Se invece fosse uguale a 31 o minore, stiamo parlando di un uomo e quindi è sufficiente restituire i due caratteri inseriti nel codice fiscale. Il "/" finale è solo per restituirlo come se fosse una data (ad esempio 12/ ). NUMERO.VALORE si rende necessario per trasformare in numero un valore che Excel interpreta come testo
INDICE(LISTE!$E$8:$E$19;CONFRONTA(STRINGA.ESTRAI(E3;9;1);LISTE!$F$8:$F$19;0)))
Con un semplice INDICE + CONFRONTA, possiamo ricavare il mese di nascita dalla lista del foglio LISTE.
2. Decodifica codice fiscale: l'anno di nascita
In questo caso ci interessano i caratteri #7 e #8 e dobbiamo segnalare che non vi sono differenze per il codice fiscale a un secolo di distanza. Ricavando informazioni da uno specifico codice fiscale, 1905 potrebbe anche essere 2005. Il calcolo del codice fiscale inverso può quindi portare a qualche incomprensione.
CF: codice fiscale con anno fraintendibile (1905 o 2005)
In questo caso, dovremo segnalarlo nella formula
CF: codice fiscale con anno non fraintendibile (1987)
Per gli anni non fraintendibili, non sarà necessaria questa specifica
Formula per ottenere l'anno di nascita dal codice fiscale
=SE(
Abbiamo due casi, quindi iniziamo con un SE.
NUMERO.VALORE(STRINGA.ESTRAI(E3;7;2))<=NUMERO.VALORE(DESTRA(ANNO(OGGI());2));
CONCAT("19";STRINGA.ESTRAI(E3;7;2);" oppure 20";STRINGA.ESTRAI(E3;7;2));
Se i due caratteri sono inferiori agli ultimi due caratteri dell'anno attuale, allora dobbiamo indicare che potrebbe essere sia del ventesimo sia del ventunesimo secolo. Esempi possono essere combinazioni di caratteri quali 15, 06 e 03. Il CONCAT unisce 19 e 20 per ottenere l'anno complessivo, ad esempio "1903 o 2003"
CONCAT("19";STRINGA.ESTRAI(E3;7;2)))
Se invece la data non si può fraintendere, possiamo semplicemente unire 19 con i due caratteri del codice fiscale.
Se poi tu volessi trovare gli anni della persona indicata, si può fare con la formula DATA.DIFF:
=DATA.DIFF(DATA(C4;MESE(C3);GIORNO(C3));OGGI();"Y")
In questo caso stiamo confrontando la data inserita con la data di OGGI, grazie alla funzione OGGI. DATA.DIFF prende la data iniziale, che viene ricreata inserendo le informazioni della persona indicata, per poi confrontarla con la data odierna. Y indica gli anni che desideriamo ottenere.
3. Decodifica codice fiscale: il sesso
In questo caso dobbiamo ripetere il calcolo precedente visto per la data di nascita.
Formula per ottenere il sesso dal codice fiscale
=SE(NUMERO.VALORE(STRINGA.ESTRAI(E3;10;2))<41;"M";"F")
Se il valore è inferiore a 41, la formula restituisce M per uomo. Se invece fosse superiore, restituirebbe F per donna. Il NUMERO.VALORE viene aggiunto poichè altrimenti il valore viene interpretato come testo.
4. Calcolo del codice fiscale inverso: il comune
In questo caso, è sufficiente un INDICE + CONFRONTA per recuperare il comune di pertinenza dal codice fiscale. Ci interessano i caratteri #12, #13, #14 e #15.
Formula per ricavare il comune di nascita dal codice fiscale
=INDICE(LISTE!$I$8:$I$10683;
CONFRONTA(STRINGA.ESTRAI(E3;12;4);LISTE!$H$8:$H$10683;0))
Con INDICE + CONFRONTA possiamo ricavare le informazioni che ci servono dal foglio LISTE.
Conclusione: come ricavare informazioni dal codice fiscale
Siamo arrivati alla fine dell'articolo! Abbiamo scoperto come ricavare informazioni importanti da un singolo codice fiscale usando Microsoft Excel. Se vuoi, puoi scaricare il file per utilizzarlo quando preferisci e fare il calcolo del codice fiscale inverso.
Sono un formatore e consulente esperto nell’uso e nell’insegnamento di Microsoft Excel.
Negli ultimi 3 anni ho tenuto corsi presso realtà in multinazionali come Aruba, Bridor, IMI Orton, Primadonna e SISAL, oltre a PMI e startup di diverso genere.
Realizzo corsi di formazione Excel dedicati per aziende, supporto professionisti 1:1 a distanza con call mirate e collaboro con aziende offrendo servizi di consulenza quali creazione di business plan, dashboard di vendita e non solo.
Vuoi saperne di più? Prenota una call gratuita di 15′!
puoi indicarmi la formula per calcolare il cf per i nati dopo il 2000
grazie
Ciao Domindo,
dovrebbe essere la stessa, almeno così viene indicato su Wikipedia!
Quindi se fosse 1902 potrebbe anche essere 2002, se hai delle risorse a riguardo ci guardo volentieri.
A presto e buona giornata
Marco
Come è possibile gestire l'omocodia nel tuo algoritmo, magari indicando negli input il fatto che il CF da calcolare è il secondo o il terzo a parità di dati generati (stesse lettere per nome e cognome, stessa data e sesso, stesso luogo di nascita)?
Idem per il CF inverso, ovvero inserito un CF con omocodia, come possiamo verificarne l'esattezza?
Grazie.
Ciao Edoardo,
purtroppo non c'è modo di farlo tramite il file che ho creato - sono casi veramente limite che richiedono un controllo con un database ex post e non prevedo di aggiornare il file perchè non sono certo ci sia una regola che vale per tutti, in questi casi.
A presto,
Marco
Buongiorno ,si potrebbe avere l'inserimento automatico dell'età ad oggi,grazie
Ciao Giuseppe,
ottima domanda - in effetti si potrebbe aggiungere lavorando con DATA.DIFF, ho aggiornato la guida!
Grazie mille dello spunto,
Marco
ciao,
forse non ho capito qualcosa ma, c'è la possibilità di estrarre nome e cognome per esteso?
Ciao Giampiero,
purtroppo non si può perchè ci sono diverse combinazioni possibili - ad esempio Mirco o Marco sarebbero uguali (MRC), non potresti arrivare a un risultato definitivo se non avendo un riferimento anagrafico preciso da un database statale.
A presto,
Marco