Condividi:        

[excel] ricerca di valori in elenco con nomi non univoci

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

[excel] ricerca di valori in elenco con nomi non univoci

Postdi elromanito » 21/08/13 14:37

ciao a tutti, ho cercato per alcuni giorni nel forum la soluzione a questo mio problema ma non sono riuscito a trovare nulla, pertanto chiedo a voi più esperti.
in foglio1 nella colonna A ho dei nomi che si ripetono, e nella C dei valori; su foglio2 avendo nella col.A gli stessi nomi della col.A di foglio1 ma in ordine alfabetico, dovrei mettere da col.B in avanti, in corrispondenza del nome, tutti i valori che incontro in col.C di foglio1 relativi al nome.
copio qui i valori delle coll. AeC di foglio1, non potendo allegare files (in B c'è il nome dell'inquadramento, ma non è importante):

Andrea 1099
Roberto 413
Gianni 42342
Lorenzo 5454
Gianni 222
Andrea 11
Luca 10000
Fulvio 8199
Lorenzo 223
Roberto 6

devo mettere in foglio2: in B1=Andrea, in B2=1099, in B3=11 ecc, proprio come sono nell'ordine vericale in col.C di foglio1

spero di essere stato chiaro.
vi ringrazio anticipatamente.
elromanito
Utente Junior
 
Post: 17
Iscritto il: 14/06/13 12:27

Sponsor
 

Re: [excel] ricerca di valori in elenco con nomi non univoci

Postdi elromanito » 21/08/13 15:05

errore:
in foglio2: in col.A i nomi di cui allo schema copiato, in ordine alfabetico e (poniamo che Andrea sia in A1), in B1=1099, in C1=11, ecc.
elromanito
Utente Junior
 
Post: 17
Iscritto il: 14/06/13 12:27

Re: [excel] ricerca di valori in elenco con nomi non univoci

Postdi scossa » 21/08/13 15:15

Ciao,

di quante nomi e di quanti valori stiamo parlando? 10, 100, 1000, mille mila righe (colonne)?
Bye!
scossa

Se tu hai una mela, e io ho una mela, e ce le scambiamo, allora tu ed io abbiamo sempre una mela per uno. Ma se tu hai un'idea, ed io ho un'idea, e ce le scambiamo, allora abbiamo entrambi due idee. (George Bernard Shaw)
Avatar utente
scossa
Utente Senior
 
Post: 427
Iscritto il: 01/04/12 16:40
Località: Provincia di Verona

Re: [excel] ricerca di valori in elenco con nomi non univoci

Postdi elromanito » 21/08/13 15:27

scossa ha scritto:Ciao,

di quante nomi e di quanti valori stiamo parlando? 10, 100, 1000, mille mila righe (colonne)?

i nomi per ogni foglio (che saranno riportati tutti su un unico elenco, come da esempio in foglio2) sono massimo 160 per foglio, i valori massimo 50

per spiegarmi meglio: ho 8 fogli dai quali prendere i nomi e metterli in ordine alfabetico su un altro foglio; questi sono al massimo 160 in un unico foglio, negli altri molti meno. per ognuno di questi nomi, ho massimo 50 valori
elromanito
Utente Junior
 
Post: 17
Iscritto il: 14/06/13 12:27

Re: [excel] ricerca di valori in elenco con nomi non univoci

Postdi Flash30005 » 21/08/13 16:29

Ricapitolando hai 8 fogli con dei nomi come da esempio
vorresti riportare tutti i nomi su un unico foglio che chiameremo "Elenco"
con la distribuzione dei dati come da esempio (Nome in A, 1° dato in B 2° dato in C etc)

Domanda: il nome "Andrea" si trova solo su un foglio oppure si trova anche su altri fogli?

ciao
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: [excel] ricerca di valori in elenco con nomi non univoci

Postdi elromanito » 21/08/13 16:32

Flash30005 ha scritto:Ricapitolando hai 8 fogli con dei nomi come da esempio
vorresti riportare tutti i nomi su un unico foglio che chiameremo "Elenco"
con la distribuzione dei dati come da esempio (Nome in A, 1° dato in B 2° dato in C etc)

Domanda: il nome "Andrea" si trova solo su un foglio oppure si trova anche su altri fogli?

ciao

confermo la tua affermazione :D
alla domanda ti rispondo no, ossia che in ogni foglio ci sono cmq nomi differenti da tutti gli altri fogli, ma ovviamente sono ripetuti X volte nel foglio stesso, perché riguardan o le azioni che ogni persona ha fatto (valori)
elromanito
Utente Junior
 
Post: 17
Iscritto il: 14/06/13 12:27

Re: [excel] ricerca di valori in elenco con nomi non univoci

Postdi elromanito » 21/08/13 17:11

ho usato la funzione cerca e per il primo valore ovviamente non ho problemi. dovrei trovare un'altra funzione da nidificare per fargli trovare il secondo valore relativo a quel nome.
in "foglio elenco" su riga 1 partendo da B, posso anche mettere i numeri progressivi da 1 a 50 per fargli cercare l'X-esimo valore relativo al nome in questione, se dovesse servire. ovviamente in questo caso i nomi scenderebbero in col.A partendo da A2
elromanito
Utente Junior
 
Post: 17
Iscritto il: 14/06/13 12:27

Re: [excel] ricerca di valori in elenco con nomi non univoci

Postdi Flash30005 » 21/08/13 19:42

Nella cartella di Excel con i tuoi 8 o più fogli con dati aggiungi un foglio che denominerai "Elenco" (senza virgolette)

In un modulo inserisci questa macro
e poi avviala
Codice: Seleziona tutto
Sub CreaElenco()
Set WsE = Worksheets("Elenco")
WsE.Cells.Clear
For F = 1 To Worksheets.Count
    If Worksheets(F).Name <> "Elenco" Then
        UR = Worksheets(F).Range("A" & Rows.Count).End(xlUp).Row
        For RR = 1 To UR
            T = 0
            NomeA = Worksheets(F).Range("A" & RR).Value
            URE = WsE.Range("A" & Rows.Count).End(xlUp).Row
            For RRE = 1 To URE
                NomeE = WsE.Range("A" & RRE).Value
                If NomeA = NomeE Then T = 1
            Next RRE
            If T = 0 Then WsE.Range("A" & URE + 1).Value = NomeA
        Next RR
        For RRE = 1 To URE
            For RR = 1 To UR
                NomeA = Worksheets(F).Range("A" & RR).Value
                URE = WsE.Range("A" & Rows.Count).End(xlUp).Row
                NomeE = WsE.Range("A" & RRE).Value
                If NomeA = NomeE Then
                    UCE = WsE.Cells(RRE, Columns.Count).End(xlToLeft).Column + 1
                    WsE.Cells(RRE, UCE).Value = Worksheets(F).Range("C" & RR).Value
                End If
            Next RR
        Next RRE
    End If
Next F
End Sub


Ciao
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: [excel] ricerca di valori in elenco con nomi non univoci

Postdi Anthony47 » 22/08/13 00:03

Guarda la soluzione suggerita da Flash, sopra.
Con formule:
-L' elenco iniziale e' in Foglio1, A1:A1000
-L' elenco del riepilogo e' su Foglio2 (o altro foglio), da A1 verso il basso
-In Foglio2-B1 inserisci la formula
Codice: Seleziona tutto
=SE(VAL.ERRORE(SOMMA($A1:A1));"";INDICE(Foglio1!$C$1:$C$1000;PICCOLO(SE(Foglio1!$A$1:$A$1000=$A1;RIF.RIGA(Foglio1!$A$1:$A$1000);"");RIF.COLONNA(A1))))

Da confermare con Contr-Maiusc-Enter, non il solo Enter.
Copia poi B1 verso destra per un numero di celle che copra sicuramente il numero max di occorrenze di un nominativo (non ho capito se e' 8 oppure 50, o un altro numero); poi copia tutte le formule di riga 1 e incollale in B2 e sottostanti.
Ho fatto in modo che dopo l' ultimo valore utile rimanga un errore #NUM; dovrebbe essere la prova che hai estratto tutti i valori dall' elenco.

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

Re: [excel] ricerca di valori in elenco con nomi non univoci

Postdi elromanito » 22/08/13 11:37

mamma mia che pippa che sono, e che bravi siete voi!!
sicuramente il VBA non è per nulla il mio campo, ma nemmeno con le funzioni ci sarei mai arrivato. ho provato la funzione matriciale e va ottimamente (ma è normale che sia così lento il calcolo oppure c'è qualcosa che non va nel mio file?), ed ho fatto una prova con la macro e va bene anche; poi quando la applicherò definitivamente ai miei dati vi farò sapere.
per ora non resta altro che ringraziarvi ragazzi, tutti, ma ovviamente in particolare Flash30005 e Anthony47
elromanito
Utente Junior
 
Post: 17
Iscritto il: 14/06/13 12:27

Re: [excel] ricerca di valori in elenco con nomi non univoci

Postdi Anthony47 » 23/08/13 00:23

La formula fa calcoli a catena su una matrice di 1000 elementi; quindi e' piu' lenta di una formula convenzionale. Di quanto? Dipende da quante formule di questo tipo hai inserito e dalla velocita' della tua cpu. Provando sul mio pc con elenco di 2000 righe, 200 nominativi e 15 formule per ogni nominativo (quindi 3000 formule) il ricalcolo e' eseguito in 2-3 decimi di secondo.

Comunque se non hai bisogno dell' aggiornamento in real time dei risultati allora la macro potrebbe risultare la soluzione migliore.

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

Re: [excel] ricerca di valori in elenco con nomi non univoci

Postdi elromanito » 23/08/13 11:07

ho capito. sì mi ero reso conto della maggior rapidità della macro, però mi viene più facile in questo caso usare le formule
grazie della spiegazione
elromanito
Utente Junior
 
Post: 17
Iscritto il: 14/06/13 12:27


Torna a Applicazioni Office Windows


Topic correlati a "[excel] ricerca di valori in elenco con nomi non univoci":


Chi c’è in linea

Visitano il forum: Nessuno e 86 ospiti