Fai la tua domanda
0

Estrarre primo nome e primo cognome per indirizzo posta elettronica

chiesto il 2015-12-13 02:12:58 +0100

Immagine gravatar per Nemo_bis

Ho un foglio che ha una persona per riga: in una colonna i nomi, in un'altra colonna i cognomi. Devo formare i rispettivi indirizzi di posta elettronica, che sono nella forma nome.cognome@dominio

modifica retag flag offensive close merge delete

1 Answer

0

risposto il 2015-12-13 02:18:27 +0100

Immagine gravatar per Nemo_bis

updated 2016-01-03 23:21:39 +0100

Utilizzo un metodo simile a https://ask.libreoffice.org/en/questi...

Ricordati di attivare le espressioni regolari nelle formule da Opzioni > Calc > Calcola > Permetti espressioni regolari.

Poi dobbiamo controllare vari casi: persone con piú di un nome o cognome; cognome che cominci per "di", "de" o simili (preposizioni e preposizioni articolate, per semplicità suppongo siano di 2 o 3 caratteri); rimozione di apostrofi (ed eventualmente trattini). Presumo anche che sia usato solo il primo nome e il primo cognome.

Se il nome è in colonna A, cognome in colonna B, il punto in C1 e il @dominio in D1 la formula sarà qualcosa come:

=SOSTITUISCI(MINUSC(CONCATENA(SE(CONTA.SE(A1;".+ .+");SINISTRA(A1;TROVA(" ";A1)-1);A1);$C$1;SE(CONTA.SE(B1;"^.. .+ .+");SINISTRA(B1;TROVA(" ";SOSTITUISCI(B1;"^(..) ";B1)-1+2));SE(CONTA.SE(B1;".+ .+");SOSTITUISCI(B1;" ";"");B1));$D$1));"'";"")

L'ho poi cambiato in questo per tenere conto dei cognomi che cominciano per Di/De/Al e poi hanno uno o due nomi:

=SOSTITUISCI(MINUSC(CONCATENA(SE(CONTA.SE(E2;".+ .+");SINISTRA(E2;TROVA(" ";E2)-1);E2);$G$1;SE(CONTA.SE(D2;"^.. .+ .+");SINISTRA(SOSTITUISCI(D2;" ";"";1);TROVA(" ";SOSTITUISCI(D2;" ";""; 1))-1);SE(CONTA.SE(D2;"^.. .+");SOSTITUISCI(D2;" ";"";1);SE(CONTA.SE(D2;".+ .+");SINISTRA(D2;TROVA(" ";D2)-1);D2)));$H$1));"'";"")
modifica flag offensive delete link more
Login/Signup to Answer

Question Tools

1 follower

Stats

Chieste: 2015-12-13 02:12:58 +0100

Seen: 59 times

Last updated: Jan 03 '16