Pagina precedente | 1 | Pagina successiva
Vota | Stampa | Notifica email    
Autore

Calcolo codice Fiscale "Cognome o Nome" Avente solo due caratteri

Ultimo Aggiornamento: 26/10/2018 10:29
Post: 5
Registrato il: 07/04/2017
Città: CHIETI
Età: 45
Utente Junior
Excel 2016
OFFLINE
25/10/2018 12:41

a risalve ragazzi
come posso inserire una formula, facendogli fare il controllo se al cognome ci sono solo due CARATTERI?
ad esempio
ho un cognome che è questo MY come gli posso dire di inserire alla terza lettera la X, perchè se non mi ricordo male se non sono sufficienti i carattaeri ci si inserisce la X
Avete qualche idea?
Graize mille a tutti
Post: 1.963
Registrato il: 06/04/2013
Utente Veteran
2010
OFFLINE
25/10/2018 13:11

premesso che qualsiasi calcolo del codice fiscale fatto in autonomia o qualsiasi programma di calcolo NON è affidabile, in quanto solo le autorità preposte sono in grado di farlo (vedi problemi di omonimie etc):

la formula è intuitiva: posto in A1 il cognome:

=se(lunghezza(a1)=2;a1 & "X";altrimenti fai altro)

saluti


Domenico
Win 10 - Excel 2016
Post: 5
Registrato il: 07/04/2017
Città: CHIETI
Età: 45
Utente Junior
Excel 2016
OFFLINE
25/10/2018 13:18

grazie per la risposta, e lo so che solo le autorità possono dare il cod fiscale attendibile...
Post: 6
Registrato il: 07/04/2017
Città: CHIETI
Età: 45
Utente Junior
Excel 2016
OFFLINE
25/10/2018 13:59

un piccoooooolo problema...
mi controllate, sempre per favore, se questa formula è scitta giusta?.
=RemoveSpecial(SE(LUNGHEZZA(Immatricolati!C2)=2;Immatricolati!C2&"X";SOSTITUISCI(SOSTITUISCI(SOSTITUISCI(SOSTITUISCI(SOSTITUISCI(SOSTITUISCI(MAIUSC(Immatricolati!C2);" ";"");"U";"");"O";"");"I";"");"E";"");"A";"")))

ma c'è un limite nell'annidamento delle formule? perchè quando premo invio così mi dice:"Questa formula usa un numero di livelli di annidamento maggiori di quelli utilizzabili nel formato di file corrente"

Perchè ho messo la stessa funzione, sena il richiamo alla Function Removespecial, nella riga che mi occorreva, e funziona cioè così:
=SE(LUNGHEZZA(Immatricolati!C237)=2;Immatricolati!C237&"X";SOSTITUISCI(SOSTITUISCI(SOSTITUISCI(SOSTITUISCI(SOSTITUISCI(SOSTITUISCI(MAIUSC(Immatricolati!C237);" ";"");"U";"");"O";"");"I";"");"E";"");"A";""))

Io uso Excel 2016
[Modificato da Coccino78 25/10/2018 14:21]
Post: 1.964
Registrato il: 06/04/2013
Utente Veteran
2010
OFFLINE
25/10/2018 19:55

Ciao
non entro nel merito di quanto chiesto (casomai sottoponi un esempio)

Quello che capisco (a parte se il testo è di 2 crt che aggiunge X) è che devi eliminare tutte le vocali/spazi contenuti nella parola analizzata.

Potresti utilizzare le regular expression (un po' ostiche da capire, ma...)

Function ClearStr(Txt As Range) As String
If Len(Txt) = 2 Then
    ClearStr = Txt & "X"
    Exit Function
End If
With CreateObject("VBScript.RegExp")
.Global = True
.Pattern = "[aAeEiIoOuU\s]"
ClearStr = .Replace(Txt, "")
End With
End Function


Uso: =ClearStr(cella)

Saluti



[Modificato da dodo47 25/10/2018 19:58]
Domenico
Win 10 - Excel 2016
Post: 7
Registrato il: 07/04/2017
Città: CHIETI
Età: 45
Utente Junior
Excel 2016
OFFLINE
25/10/2018 21:31

Grazie per la risposta....
l'esempio è proprio quello, non ci sono vocali da eliminare, il cognome di una persona che è effettivamente questo MY, solo due consonanti quindi quando vado a fare tutti i calcoli per le prime 3 lettere del cognome mi restituisce MYY ma deve mettere MYX, e non sapevo come fare.
Poi ho chiesto ed ho riportato il problema che, nidificando come nella prima formula, Excel mi restituisce quel messagio.
Adesso provo con lo script che mi hai dato.

Il problema rimane, quando faccio il richiamo della function, nella lunga formula che ho messo, mi restituisce, il medesimo messaggio di errore:
"Questa formula usa un numero di livelli di annidamento maggiori di quelli utilizzabili nel formato di file corrente"
[Modificato da Coccino78 25/10/2018 22:27]
Post: 1.965
Registrato il: 06/04/2013
Utente Veteran
2010
OFFLINE
26/10/2018 09:49

Ciao
probabilmente non mi sono espresso bene.

La funzione proposta, oltre a inserire una X nel caso la stringa abbia 2 caratteri, ripulisce la stessa da tutte le vocali e spazi; quello che mi sembra faccia la tua sostituisci(sostituisci(......

E' solo un modo alternativo usando una funzione.

Saluti



Domenico
Win 10 - Excel 2016
Post: 8
Registrato il: 07/04/2017
Città: CHIETI
Età: 45
Utente Junior
Excel 2016
OFFLINE
26/10/2018 10:29

aaah...ok ok
allora adesso provo con la tua funzione, eliminando la mia formula
Vota:
Amministra Discussione: | Chiudi | Sposta | Cancella | Modifica | Notifica email Pagina precedente | 1 | Pagina successiva
Nuova Discussione
 | 
Rispondi
Cerca nel forum
Tag discussione
Discussioni Simili   [vedi tutte]
Feed | Forum | Bacheca | Album | Utenti | Cerca | Login | Registrati | Amministra
Tutti gli orari sono GMT+01:00. Adesso sono le 18:05. Versione: Stampabile | Mobile | Regolamento | Privacy
FreeForumZone [v.6.1] - Copyright © 2000-2024 FFZ srl - www.freeforumzone.com