Condividi:        

[Vba] Macro omonimi

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

[Vba] Macro omonimi

Postdi mmitola » 24/06/15 10:42

Buongiorno a tutti,
il file che sto utilizzando dovrebbe prevedere le seguenti caratteristiche. Sono in possesso di un elenco di nomi e cognomi dei quali mi serve sapere la via di residenza.
Quindi sul foglio 1, chiamato "Elenco1" è presente il seguente elenco:

ROSSI MARIO
ZOTTI FRANCESCO
GRANDE GIULIO

Nel foglio 2, chiamato "elenco amministrati" è presente l’elenco di tutti i residenti prensenti nel comune nel quale sto cercando, comprese le vie di residenza, in questo modo:

ABBINANTE AMANDA VIA TOSCANINI
DE SERI GIOVANNI PIAZZA GIULIANI
DE PASCA GIULIANO …
….
ROSSI MARIO
….

Fin qui tutto ok, con un bel cerca.vert riesco a “pescare” tutte le informazioni che mi servono. Ossia con il cerca vert riesco a visualizzare le vie di residenza dei nomi e cognomi presenti nel foglio "Elenco1".
Il problema nasce in caso di omonimia. Nel senso che, in questo caso, mi pesca la via di residenza del primo nome e cognome. Mi spiego meglio:
Supponiamo che ci siano nel file "elenco amministrati" 4 persone che si chiamano "Rossi Mario", il cerca vert mi mostrerà la via di residenza del primo "Rossi Mario" che troverà in questo foglio. Io vorrei che mi mostrasse tutte le vie di residenza dei Sig. ri "Rossi Mario", in modo tale da scegliere io chi è la persona che effettivamente mi interessa.
A questo punto ho utilizzato la formula che trovate nel seguito:

=SE(INDICE('elenco amministrati '!$A$1:$B$40000;CONFRONTA(INDICE('elenco amministrati '!$B$1:$B$40000;CONFRONTA(C64;'elenco amministrati '!$B$1:$B$40000;0)+1);'elenco amministrati '!$B$1:$B$40000;0);1)=$B64;INDICE('elenco amministrati '!$B$1:$B$40000;CONFRONTA(C64;'elenco amministrati '!$B$1:$B$40000;0)+1);"n/d")

L'obiettivo di questa formula dovrebbe essere quello di fare un confronto sulle vie e, contemporaneamente, sui nomi. Trascinando la formula verso destra mostrerà tutte le possibili vie associate al nome presente nella riga (Tutto questo gestito sul foglio "Elenco1").

Purtroppo, però, non capisco perchè la mia formula funziona male, perchè mi dà sempre "n/d", come se non vi fossero omonimi.

Come potrei fare? Qualcuno di voi potrebbe darmi una mano in merito? Spero proprio che sia così.
Vi ringrazio anticipatamente per l'aiuto e la collaborazione.
Grazie ancora una volta per l’aiuto.
Buona giornata a tutti,
saluti.
mmitola
Utente Junior
 
Post: 25
Iscritto il: 01/02/12 21:45

Sponsor
 

Re: [Vba] Macro omonimi

Postdi ricky53 » 24/06/15 14:48

Ciao,
tu con quale regola stabilisci la via del Mario Rossi che stai elaborando?

Con la stessa regola si può creare una chiave che renda univoci i Mario Rossi

In alternativa devi differenziare i vari Mario Rossi per renderli univoci e così il CERCA.VERT troverà i dati di quello giusto.
Dice il vecchio saggio provare e riprovare è l'unica strada per imparare

Più chiara è la vostra spiegazione
Più immediata sarà la nostra soluzione


. . . . . . . . . .
S.O. W10; Office 2003-10-13-16-19
Avatar utente
ricky53
Utente Senior
 
Post: 4565
Iscritto il: 11/04/09 19:29
Località: Italia

Re: [Vba] Macro omonimi

Postdi Anthony47 » 24/06/15 22:19

Anche secondo me non e' chiaro il meccanismo con cui sceglierai quale nominativo selezionare.
Comunque supponiamo che in foglio "elenco amministrati " (lo spazio in fondo al nome foglio l'hai messo per farti prima o poi uno sgambetto, vero?) Nome /Cognome /Indirizzo siano in colonne A /B /C, e che nel foglio "Elenco1" Nome /Cognome siano in colonne A /B, allora puoi ottenere gli indirizzi presenti inserendo in C2 la formula
Codice: Seleziona tutto
=INDICE('elenco amministrati '!$C$1:$C$2000;PICCOLO(SE(('elenco amministrati '!$A$1:$A$2000=$A2)*('elenco amministrati '!$B$1:$B$2000=$B2);(RIF.RIGA('elenco amministrati '!$A$1:$A$2000));"");RIF.COLONNA(A1)))

Da confermare con Contr-Maiusc-Enter, non il solo Enter.
Poi copi verso destra e verso il basso
Se l' elenco in "elenco amministrati " supera le 2000 righe allora aumenta tutti i "2000" presenti nella formula.

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19222
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: [Vba] Macro omonimi

Postdi mmitola » 25/06/15 09:42

Buongiorno a tutti,
l'intento della mia formula è solo quello di evidenziare se esiste più di un "Mario Rossi". Qualora ci fosse, di avere tutte le diverse vie di residenza.
Poi la scelta del Mario Rossi che mi interessa è manuale, anche perchè nel foglio Elenco 1 sono presenti circa 300 nomi e cognomi, tra i quali dovrebbero esserci circa 100 omonimi.
Mentre nel foglio elenco amministrati sono presenti 37000 nomi.
mmitola
Utente Junior
 
Post: 25
Iscritto il: 01/02/12 21:45

Re: [Vba] Macro omonimi

Postdi Anthony47 » 01/07/15 22:17

La formula proposta hai avuto modo di provarla? con quale esito?
Avatar utente
Anthony47
Moderatore
 
Post: 19222
Iscritto il: 21/03/06 16:03
Località: Ivrea


Torna a Applicazioni Office Windows


Topic correlati a "[Vba] Macro omonimi":


Chi c’è in linea

Visitano il forum: Nessuno e 54 ospiti