|
Rank: Member
Iscritto dal : 4/27/2004 Posts: 23
|
Con EXCEL 97 vorrei creare un elenco, partendo da una lista di nomi, acluni dei quali sono ripetuti più volte. Qualcuno mi sa suggerire una formula o, comunque, un possibile procedimento per ripulire la lista dai nominativi ripetuti, in modo che l'elenco risultante contenga tutti i nominativi della lista, ma una volta sola ciascuno? Spero di essere stato chiaro... Ringrazio per il repost Claudio
|
|
|
|
|
Rank: Member
Iscritto dal : 10/4/2000 Posts: 0
|
ciao puoi risolovere la cosa con una macro ; ne butto giu' una al volo . ipotizziamo che i nomi siano nella colonna a e vadano dalla riga 1 alla riga 100 per prima cosa ordina la colonna per ordine alfabetico ed in seguito esegui questa macro
Public Sub pulisci() For i = 100 To 2 Step -1 If Cells(i, 1) = Cells(i, 1).Offset(-1, 0) Then Rows(i).Delete End If Next i End Sub
dovrebbero rimanere tutti i nomi una sola volta .
ciao
|
|
Rank: Member
Iscritto dal : 4/27/2004 Posts: 23
|
Ti ringrazio per la macro (ha funzionato perfettamente su 65.430 nominativi...) Spero di non approffittare della tua cortesia, ponendoti un altra richiesta: -come posso fare una comparazione tra due elenchi di nominativi, estraendo da "A" i nominativi che non compaiono in "B"? Grazie ancora Claudio
|
|
Rank: Member
Iscritto dal : 10/4/2000 Posts: 0
|
ciao ho buttato giu' una macro molto grezza comunque funziona (non ho tempo di migliorarla ) allora nella colonna a a partire dalla cella a1 metti la tabella completa , nella colonna c a partire dalla cella c2 metti la tabella parziale ed in seguito esegui la macro
Public Sub bbb() Range("c1").Activate Range("c1") = 0 Do While Not IsEmpty(ActiveCell) ActiveCell.Offset(1, 0).Activate For i = 25 To 1 Step -1 If Cells(i, 1) = ActiveCell Then Cells(i, 1).Interior.ColorIndex = 6 End If Next i Loop End Sub
tutto cio' che restera' bianco nella colonna a significa che non compare nella colonna c
ps: modifica il numero 25 con le effettive righe del tuo elenco completo
visto che ho letto che i nomi sono tanti esegui in seguito questa macro
Public Sub aaa() For i = 65500 To 1 Step -1 If Cells(i, 1).Interior.ColorIndex = 6 Then Rows(i).Delete End If Next i End Sub
ti ritroverai nella colonna a solamente i nomi che non comparivano nella colonna c
ciao
|
|
Rank: AiutAmico
Iscritto dal : 5/29/2003 Posts: 1,694
|
Per estrarre i record univoci nel confronto della tabella A con la Tabella B puoi usare la comoda funzione Filtro Avanzato mettendo come criterio la seguente formula: =Val.errore(Confronta(A2;$B$2:$B65500;Falso)) tra le opzioni del Filtro avanzato scegli "copia unica dei record" e Copia in un'altra posizione" in modo di avere bella pronta la tabella filtrata dai record ripetuti . saluti Andrea
|
|
Rank: Member
Iscritto dal : 4/27/2004 Posts: 23
|
Ringrazio per l'aiuto prezioso. Ma è così difficile "costruire" i codici macro??? Tuttalpiù approfitterò ancora della pazienza di c.boggio... Grazie
|
|
Guest |